60000
138
466
710
207
919
930
809
688
425
152
377
40
80
609
594
236
254
542
68
99
444
845
143
72
961
862
723
242
261
732
445
254
180
593
124
175
541
287
138
726
605
316
520
394
287
380
326
424
158
56
957
525
47
136
679
70
808
924
705
721
111
166
627
974
665
242
569
864
31
745
493
619
686
948
902
535
766
844
569
477
22
822
403
101
872
41
279
293
793
910
961
996
801
601
906
773
16
573
372
336
428
662
733
753
206
57
527
393
493
863
139
468
888
406
765
64
273
918
926
265
430
109
251
27
480
688
923
91
358
26
462
98
44
146
356
749
878
550
886
895
264
920
483
11
745
467
78
365
950
956
926
268
153
272
599
516
24
479
854
647
295
583
851
171
155
463
546
421
122
104
24
360
690
175
760
139
529
971
328
513
233
45
675
320
181
156
463
282
657
29
562
367
21
327
110
391
211
603
554
678
32
775
979
944
124
152
560
86
899
190
634
356
278
261
943
471
582
491
138
666
306
266
923
246
273
941
644
390
586
682
205
524
769
801
710
135
457
939
792
691
842
955
182
532
908
286
844
269
342
44
540
912
566
511
215
259
914
81
780
153
429
436
450
258
793
559
254
626
701
192
861
970
466
134
611
197
544
429
250
993
289
868
750
742
347
374
854
806
377
888
64
97
652
19
931
949
170
761
379
213
562
508
275
423
107
451
22
284
620
303
402
730
250
379
756
405
187
243
653
212
177
338
946
490
892
34
808
331
377
134
648
191
202
891
108
167
381
287
779
106
907
849
44
800
409
626
808
992
614
299
838
686
984
337
538
358
370
300
696
541
720
148
934
790
883
84
20
709
308
770
122
716
794
557
837
224
305
694
267
697
691
786
756
778
319
178
288
747
663
490
383
171
703
820
835
29
872
994
834
158
562
491
512
354
75
507
25
639
384
270
779
915
280
999
483
18
336
332
444
825
995
472
848
435
374
683
132
923
738
324
235
446
80
252
927
317
581
995
255
885
260
147
964
737
288
991
441
856
571
303
192
642
872
781
397
562
181
494
136
560
909
270
761
347
75
425
683
255
54
383
221
285
134
483
121
205
375
586
306
297
281
891
780
158
330
617
525
264
281
271
192
647
729
304
531
106
488
981
227
195
694
403
648
41
605
922
785
988
470
347
21
569
648
47
28
596
300
517
675
602
935
235
547
564
823
931
439
950
599
155
135
785
489
89
134
747
400
675
249
958
258
767
62
733
359
817
765
714
103
712
217
433
76
90
117
231
912
204
391
826
694
487
653
868
761
123
875
183
187
992
559
672
140
685
202
132
416
466
563
514
58
861
510
942
284
528
136
806
10
232
880
469
49
117
610
386
361
266
953
969
941
474
146
620
680
139
90
352
752
456
677
505
825
563
79
780
53
13
722
744
311
852
545
306
597
447
621
561
570
384
127
258
876
779
710
191
64
43
786
882
462
229
63
935
12
762
495
893
993
299
48
625
60
226
134
763
747
393
967
642
924
182
689
853
242
60
30
520
422
782
678
312
747
945
779
177
857
541
286
690
375
950
951
698
759
840
751
316
62
551
603
414
982
44
203
648
10
185
874
186
778
229
26
953
404
24
529
280
53
365
633
381
454
286
805
53
344
478
417
383
651
373
292
650
253
939
917
887
650
579
735
19
453
481
307
884
246
207
832
231
746
178
896
217
543
739
252
354
81
251
880
883
274
447
556
83
624
344
510
829
227
806
677
600
935
168
474
164
703
634
559
173
682
450
229
390
61
956
263
404
764
418
596
740
681
764
443
265
480
994
364
256
884
693
587
177
336
514
539
933
541
390
763
939
300
997
381
863
19
933
389
23
130
659
344
137
881
12
580
669
788
198
672
241
977
620
445
699
39
854
21
924
685
845
289
403
58
171
449
174
656
255
994
967
336
568
582
320
407
880
663
152
220
279
552
841
499
66
354
701
441
545
998
705
862
167
286
887
245
538
322
175
549
76
183
319
716
700
550
865
431
191
32
726
924
103
533
395
612
406
211
466
971
425
693
100
549
978
589
644
242
692
787
410
919
663
272
599
937
561
778
258
497
692
190
398
136
210
405
39
976
106
479
414
262
693
785
695
299
996
627
310
404
475
131
245
765
107
17
398
315
395
554
32
652
740
722
880
315
20
847
730
911
107
755
989
257
354
865
430
834
562
826
81
681
106
263
367
950
710
620
289
916
334
216
424
931
568
141
815
552
650
942
581
715
143
969
546
832
921
445
841
256
258
675
407
721
179
385
897
582
293
957
83
837
176
515
202
630
516
184
207
625
289
143
612
945
588
766
478
229
901
954
647
709
889
320
833
536
562
313
646
913
433
57
794
86
684
213
248
204
313
503
964
304
664
273
883
854
427
727
904
571
185
766
261
816
167
293
746
369
718
678
348
633
254
869
31
567
382
304
620
919
260
116
721
445
401
280
360
525
633
914
498
915
926
890
235
316
466
908
364
541
959
963
139
633
679
102
811
196
371
996
705
299
888
806
685
837
727
982
755
985
130
789
995
886
712
122
739
304
883
624
638
439
912
168
158
769
736
88
835
45
799
826
808
395
719
756
510
252
568
819
890
603
157
120
755
551
489
783
58
379
753
294
582
320
491
270
852
829
56
161
823
668
181
546
549
321
361
445
55
306
877
649
220
191
651
718
23
961
92
580
12
538
698
270
698
600
152
710
667
369
295
318
884
616
879
925
706
708
165
266
716
527
268
588
686
664
291
560
645
445
412
511
758
613
838
515
626
793
294
767
367
96
651
666
543
416
181
486
229
510
423
294
613
620
751
915
310
30
728
92
47
604
729
77
975
159
553
317
805
403
900
524
515
525
608
311
753
493
624
584
450
105
33
303
612
690
967
552
355
800
593
735
531
888
335
655
251
22
514
662
865
471
204
222
926
207
400
749
348
183
134
565
851
913
752
717
81
41
651
664
776
415
115
375
763
811
111
347
173
895
535
475
962
562
43
418
893
560
832
716
771
25
426
658
848
332
920
764
125
385
765
70
729
540
729
937
955
148
598
146
262
710
307
319
916
130
467
734
459
406
271
895
103
193
90
518
479
45
684
718
415
237
508
280
677
333
68
665
87
196
575
705
426
315
797
383
524
713
880
551
227
442
261
949
744
83
149
101
11
134
357
161
460
928
395
792
304
74
305
927
896
613
931
790
601
166
563
464
10
500
671
611
214
228
18
543
755
542
969
340
793
119
717
960
397
847
121
817
102
148
395
602
213
267
396
337
483
333
205
683
207
822
608
109
796
895
172
663
646
973
512
926
572
834
677
256
409
339
792
983
162
561
248
995
196
173
624
36
444
19
996
821
566
192
219
783
41
44
861
29
519
805
690
491
518
164
515
451
486
975
696
546
478
837
131
204
277
833
772
679
816
528
741
314
545
464
209
296
673
619
565
881
849
398
483
424
509
143
531
833
786
939
85
810
346
257
227
654
476
344
385
894
661
771
492
544
756
233
720
109
332
631
865
617
528
785
469
973
116
278
121
53
580
891
294
278
746
417
422
614
350
25
228
91
987
228
250
126
798
796
281
782
521
158
800
520
543
215
805
958
477
26
25
441
462
690
999
596
298
576
67
198
394
845
584
379
488
495
361
721
343
927
87
614
84
311
280
961
313
196
935
249
653
910
853
595
24
602
727
250
231
879
708
816
542
547
770
645
457
994
102
752
809
990
603
170
596
408
612
567
784
178
804
217
953
326
790
547
514
299
358
316
37
701
387
653
888
395
956
639
358
628
744
629
526
87
442
753
478
118
438
105
964
591
695
447
650
841
68
643
834
959
513
323
382
456
13
53
555
966
850
27
486
292
132
391
937
388
270
893
32
813
619
151
38
595
854
722
259
204
208
571
549
715
472
443
779
600
936
702
150
317
479
424
900
859
915
653
737
707
196
16
44
104
722
648
985
132
540
743
686
667
361
524
545
390
447
70
254
272
841
853
453
467
904
264
152
204
399
140
343
306
587
115
601
89
440
173
233
767
536
434
842
595
902
710
314
763
909
779
713
195
216
862
843
531
978
561
805
668
594
381
477
982
277
283
40
852
829
887
589
31
758
503
270
661
467
153
575
341
270
210
503
642
782
61
38
960
842
667
68
471
34
205
256
377
578
481
811
890
402
317
599
933
735
471
952
574
758
175
799
733
399
981
826
602
171
484
884
97
705
246
273
167
165
338
398
985
443
617
594
395
487
426
854
351
697
819
736
592
111
385
482
398
406
152
819
393
112
974
36
974
454
111
997
331
812
116
220
928
416
159
642
63
267
975
363
767
21
338
502
934
585
205
27
689
873
355
354
395
895
854
323
477
564
222
399
32
439
433
811
362
18
634
936
631
960
425
575
695
414
627
402
400
621
850
640
382
347
235
750
208
791
384
124
657
47
219
621
820
603
889
92
342
947
353
461
399
449
395
266
716
651
467
195
672
973
995
309
769
895
365
92
716
216
516
503
225
468
338
306
49
154
772
947
297
933
237
366
578
952
924
736
769
994
276
765
958
681
547
460
618
466
471
480
34
40
200
435
90
777
638
396
896
127
867
505
138
577
939
494
266
387
751
120
286
842
784
258
586
771
413
744
857
893
539
621
123
184
549
474
702
959
750
675
200
808
31
444
453
375
282
461
340
177
952
173
662
335
788
972
592
495
831
142
575
481
432
972
274
842
10
633
54
543
143
693
918
745
982
45
714
284
485
530
996
811
25
430
919
962
896
887
54
111
386
459
299
317
744
414
38
461
317
397
176
647
278
720
977
67
833
721
274
711
91
603
931
944
231
874
115
247
757
816
772
891
651
650
64
172
241
684
612
943
630
580
43
947
201
780
655
148
213
898
592
415
410
415
453
961
841
621
339
477
196
67
378
737
252
867
471
613
445
395
73
95
899
855
987
389
384
840
282
553
988
640
960
650
266
288
831
214
754
297
406
245
573
978
499
982
820
886
82
176
252
573
376
215
54
411
11
780
185
286
326
332
289
138
500
247
500
492
304
431
995
498
194
686
487
224
689
843
894
312
161
923
524
290
236
258
747
612
800
880
17
591
726
256
97
824
997
97
970
82
447
763
743
630
539
770
432
153
340
81
418
763
702
986
301
395
908
188
930
999
654
52
692
47
784
966
669
403
576
49
110
687
993
881
293
686
593
900
770
43
85
607
88
818
781
926
264
642
357
803
648
46
637
961
654
137
295
66
180
101
233
972
328
497
584
125
706
291
304
468
70
192
889
83
933
701
594
935
343
231
818
417
247
67
477
516
304
115
125
568
60
806
74
907
175
674
11
306
391
416
653
792
736
968
502
202
835
584
888
683
216
707
845
601
556
826
509
332
567
686
164
423
144
620
605
234
386
230
589
372
482
71
951
418
276
579
196
87
497
844
907
488
768
913
198
998
643
378
981
631
879
945
491
504
412
116
993
609
80
654
919
329
186
423
639
330
312
429
775
330
262
226
373
293
968
932
753
83
853
915
459
671
453
626
647
944
535
812
677
422
630
773
535
786
60
100
979
447
102
801
597
949
529
270
764
174
134
760
261
269
115
226
718
761
294
228
216
966
738
220
25
186
683
416
501
540
601
833
216
272
707
958
214
219
967
368
976
747
802
395
464
985
632
570
800
689
820
487
135
245
146
629
588
814
185
763
122
751
317
476
194
231
107
607
850
392
369
754
882
852
49
47
912
400
203
203
286
414
318
942
590
731
144
816
872
677
360
915
64
621
333
160
937
354
510
654
282
364
379
346
463
581
982
183
786
548
438
878
103
468
261
997
369
654
97
218
522
729
668
156
98
855
407
357
448
204
773
656
69
498
144
934
572
471
371
39
421
828
242
815
862
805
642
231
141
629
688
352
538
799
631
367
882
185
296
93
533
918
401
914
766
439
478
398
987
877
666
169
591
750
783
778
285
217
211
921
913
580
893
181
511
843
423
723
78
212
855
546
36
774
547
300
646
313
315
579
997
395
144
230
915
768
712
941
741
967
297
500
408
413
891
244
604
512
489
798
169
879
365
702
700
59
269
157
383
157
198
541
282
28
659
884
470
748
915
608
751
706
117
345
332
303
67
671
222
506
948
480
293
198
927
375
439
415
561
818
932
505
622
564
855
607
53
58
151
752
219
643
831
375
303
246
113
485
553
878
806
364
459
265
535
534
918
485
228
179
340
167
747
717
938
721
374
560
864
339
711
325
170
436
293
288
923
187
118
112
794
796
891
479
412
147
248
533
314
137
808
419
708
170
916
892
948
127
503
296
113
587
771
814
261
503
164
151
115
301
239
730
350
571
546
242
669
909
766
662
439
296
728
14
280
710
870
79
146
598
780
298
137
712
21
366
981
360
339
19
68
858
172
530
648
119
712
637
421
981
731
384
949
220
239
93
788
792
314
310
950
729
593
733
500
637
451
763
65
460
105
862
812
115
583
163
57
558
864
851
717
25
350
141
823
24
711
348
304
462
737
233
273
219
666
979
683
536
163
224
341
638
583
105
115
554
494
618
907
269
360
353
655
455
576
438
106
544
460
847
391
732
802
732
713
120
433
667
808
403
615
962
404
861
363
377
25
121
232
489
956
690
753
268
770
402
395
69
333
635
126
574
405
720
216
200
748
949
503
339
786
170
333
294
396
264
707
981
59
266
834
552
693
658
601
423
199
521
983
31
802
175
793
687
496
246
602
920
394
799
476
662
451
871
792
225
983
596
518
514
114
801
157
188
378
481
207
16
250
288
193
464
288
632
668
157
824
599
753
546
261
484
754
492
866
373
34
836
597
293
798
460
659
731
762
468
104
927
186
205
604
948
170
831
211
505
973
781
857
818
282
296
30
724
723
437
757
453
931
777
66
838
114
349
186
283
871
635
275
350
275
297
803
559
770
478
84
64
831
285
15
934
896
229
44
918
950
538
632
30
697
604
249
812
280
606
197
173
897
761
604
175
370
151
934
425
471
412
195
272
350
212
784
278
174
931
220
59
871
538
833
598
752
372
216
918
377
225
127
485
456
349
557
267
539
898
616
33
370
331
750
269
704
911
923
895
169
981
654
425
781
935
185
687
292
357
66
402
390
383
297
608
321
487
734
778
480
306
342
421
682
774
74
674
422
830
974
787
397
281
400
933
133
876
469
612
939
794
221
245
522
285
978
944
379
431
360
563
334
439
14
905
953
196
195
782
220
248
583
889
920
743
520
370
810
176
779
870
702
306
836
755
650
501
827
648
831
802
321
532
860
848
907
116
720
249
349
668
961
757
814
17
742
398
477
580
391
900
998
981
477
982
645
25
160
965
264
966
503
958
59
363
919
687
919
244
645
335
661
92
70
561
786
72
233
803
27
364
103
725
190
52
160
403
544
131
775
584
78
19
927
763
403
415
235
888
594
189
500
638
847
269
77
560
252
65
794
733
553
194
581
838
259
178
831
113
449
763
568
520
966
624
461
575
80
684
771
450
824
498
399
94
32
406
630
394
565
467
91
217
78
340
806
224
604
725
739
135
447
53
999
524
692
639
445
562
765
197
483
501
587
340
271
670
865
535
338
259
60
221
292
485
700
177
664
79
644
715
831
687
535
420
988
432
720
428
376
178
131
592
680
675
835
166
975
598
398
88
233
420
373
935
156
20
526
859
648
424
885
774
100
415
363
963
364
833
838
539
300
603
735
653
554
139
905
424
499
689
252
935
925
356
235
51
983
404
149
528
682
915
183
235
288
648
806
408
542
65
309
523
49
428
235
733
952
673
871
569
578
595
761
439
490
602
893
569
561
933
83
88
184
765
586
871
285
831
892
680
284
995
872
283
658
548
932
787
632
891
173
358
875
116
662
595
187
232
625
18
998
74
193
780
333
513
758
600
236
63
365
76
845
16
555
272
449
815
178
953
568
657
342
571
406
744
645
825
501
709
394
764
392
894
156
832
535
46
244
841
448
199
611
46
540
535
279
575
368
870
757
241
110
483
34
389
340
396
932
596
384
980
950
913
491
784
922
275
28
870
517
841
546
399
878
692
887
90
460
518
469
360
391
503
817
821
173
984
101
245
852
758
592
540
760
423
931
125
808
532
946
74
615
332
363
361
354
806
913
472
309
521
748
987
473
257
89
627
269
362
541
668
683
98
806
837
631
146
72
43
488
180
346
656
259
900
598
160
753
553
455
820
438
744
14
123
708
205
54
288
260
783
405
234
198
614
881
427
379
677
760
986
204
212
217
722
540
493
755
346
453
549
562
351
73
215
794
674
177
290
291
777
79
719
625
272
264
780
641
314
813
298
702
387
955
22
728
330
631
545
286
859
167
737
457
747
62
203
648
724
975
772
946
54
46
223
724
732
998
525
400
281
686
77
647
922
298
852
511
467
794
64
663
716
875
218
565
316
509
581
94
311
309
520
824
118
818
401
736
178
245
187
178
105
542
668
177
479
50
340
197
584
592
461
383
613
436
732
835
276
29
954
319
606
776
49
907
194
932
980
511
696
111
628
869
306
443
327
914
495
820
926
931
694
449
762
678
740
473
854
109
22
45
603
598
349
371
53
677
860
847
260
97
489
764
338
111
175
750
69
935
844
786
82
92
980
768
885
477
249
328
929
24
642
624
605
396
399
533
116
314
950
219
821
101
530
816
725
964
792
683
971
368
988
54
511
416
877
392
957
665
933
886
328
463
717
252
349
990
824
237
160
41
15
369
520
877
694
269
336
726
343
311
14
38
539
768
269
335
859
780
326
830
530
937
882
240
399
549
790
243
92
840
781
692
774
803
693
532
225
590
298
176
629
773
167
311
308
447
880
519
319
610
551
471
473
463
326
59
767
303
160
881
678
812
285
650
18
277
36
10
598
561
138
544
686
418
202
507
686
112
279
747
123
125
777
411
651
475
791
509
137
641
750
858
195
170
997
230
120
953
796
868
587
665
973
856
106
560
500
219
330
32
874
977
880
681
657
585
308
910
488
138
975
342
390
377
889
61
151
696
320
218
107
974
88
491
772
564
407
931
682
830
39
897
777
816
197
929
435
118
522
612
11
819
410
952
755
957
109
501
305
520
711
18
617
74
799
522
325
912
143
915
339
952
548
342
520
213
211
157
129
475
754
502
444
30
571
372
92
582
515
676
435
536
580
992
397
297
807
820
966
984
584
722
506
887
117
119
725
69
25
334
603
982
373
242
735
308
269
503
131
90
555
542
675
482
902
273
394
94
48
434
389
244
625
40
53
682
779
594
873
115
547
567
872
516
398
60
743
434
903
831
296
138
815
762
557
800
599
401
705
615
472
46
837
602
40
52
818
390
12
535
988
271
297
290
117
207
644
118
748
34
478
748
164
83
94
763
459
781
730
188
479
522
359
879
307
817
930
604
379
976
715
622
165
412
716
170
499
511
11
777
50
864
45
527
370
347
385
982
508
505
965
390
998
897
209
226
250
905
457
726
925
292
656
220
647
186
888
81
607
146
79
628
474
138
230
316
611
679
841
198
624
32
333
217
462
377
570
719
716
667
257
331
408
198
750
723
507
803
30
773
905
799
900
805
955
240
22
306
248
553
219
284
171
621
405
271
111
552
944
913
416
252
596
399
89
42
315
568
331
386
177
507
670
343
98
420
996
441
847
119
913
900
202
74
713
595
412
493
298
978
131
993
418
72
74
139
772
843
826
732
328
951
884
144
410
632
222
915
746
886
794
748
277
516
439
683
782
18
741
391
690
768
881
536
680
239
305
280
163
701
678
970
410
212
496
726
754
72
520
254
632
358
486
954
424
839
429
179
305
11
253
748
379
697
304
177
550
837
574
850
533
750
456
151
720
393
103
97
651
17
536
899
315
751
737
498
375
779
518
929
802
822
249
57
738
116
106
782
999
443
752
417
116
305
513
792
745
758
127
894
143
869
380
858
915
787
664
880
746
255
802
658
383
156
664
289
107
397
294
299
371
644
703
49
499
295
401
607
593
825
861
994
561
347
778
469
508
131
78
897
498
290
231
437
718
353
402
800
242
280
715
237
561
785
427
896
580
834
162
640
458
355
622
831
188
917
239
808
104
605
52
703
368
294
311
570
709
492
111
823
595
210
296
176
339
803
609
310
99
271
949
565
672
869
366
927
196
379
988
866
462
100
154
385
993
309
572
866
819
650
854
292
221
128
743
282
451
304
875
232
375
214
272
638
864
800
275
798
440
47
114
864
872
968
170
164
385
49
892
919
47
930
743
103
951
937
815
49
858
223
322
975
309
178
340
533
359
711
172
404
391
243
449
119
20
818
104
950
129
907
520
942
999
978
681
748
483
964
502
821
116
215
695
874
469
409
711
130
678
261
559
32
361
616
59
698
957
118
18
247
834
396
409
234
966
832
415
799
902
125
795
547
981
261
881
471
306
682
705
25
732
762
253
21
764
377
603
169
789
66
354
577
77
479
676
900
36
778
329
352
925
30
816
185
266
391
176
285
405
922
689
453
636
83
618
711
758
59
200
751
339
954
147
469
986
775
927
757
920
225
540
743
812
842
79
199
722
690
428
253
258
103
745
805
48
701
588
920
234
28
480
277
408
397
772
482
960
248
871
511
95
286
799
697
391
427
627
775
492
379
975
968
773
846
858
460
558
989
276
185
230
966
988
468
801
694
374
76
906
109
724
851
200
328
778
701
750
390
129
619
583
805
241
507
148
598
940
205
761
314
552
41
520
132
564
488
187
767
204
417
223
942
149
439
891
449
539
85
624
283
179
938
245
879
786
514
19
450
256
650
302
460
228
206
279
650
407
742
939
870
850
363
333
893
955
241
237
498
600
46
647
269
493
153
933
46
973
537
385
703
719
212
584
93
989
579
752
219
817
725
281
15
235
653
448
681
951
249
907
658
929
205
680
310
612
516
698
988
356
664
144
777
796
224
552
137
255
847
927
130
555
191
899
902
525
944
177
622
584
848
910
767
462
426
917
949
934
610
114
817
377
779
335
21
919
275
428
678
656
559
213
306
452
105
93
416
271
575
332
462
840
952
473
91
168
49
398
802
133
580
521
561
730
107
168
127
296
838
556
924
14
234
676
657
724
97
806
307
865
927
504
845
475
291
273
644
647
377
479
251
491
635
397
767
965
25
693
405
475
631
713
830
725
985
198
628
323
390
107
335
488
403
133
11
89
76
450
705
482
26
604
937
402
296
691
230
104
219
708
888
237
611
199
513
772
853
595
513
782
567
946
562
236
575
503
28
120
603
716
726
398
623
821
870
390
473
38
984
775
271
360
383
519
28
208
674
824
460
816
125
368
282
216
430
145
630
881
61
349
744
37
315
574
726
365
348
229
74
587
961
629
831
757
368
363
349
391
964
512
693
320
848
373
281
220
77
906
935
472
138
80
611
782
28
757
670
164
489
59
933
805
879
302
62
775
621
644
588
842
176
826
885
453
651
781
324
129
679
784
115
15
196
277
636
274
266
537
780
975
467
132
333
115
932
145
97
238
883
912
925
680
559
692
488
706
749
38
888
141
647
930
56
88
46
11
213
822
776
137
359
667
789
527
719
612
178
169
637
165
842
392
977
548
655
53
576
135
762
795
748
718
412
139
638
387
770
524
606
244
756
427
60
325
97
286
228
390
135
968
577
377
905
168
711
550
14
918
666
562
809
420
619
103
584
59
468
918
355
55
78
567
521
242
48
816
127
196
916
387
279
999
245
350
148
32
92
60
581
835
10
508
177
477
244
215
139
378
109
517
882
799
329
273
371
56
940
929
689
406
289
575
954
308
244
59
90
236
880
865
285
221
816
127
887
701
987
237
768
568
599
206
510
845
155
297
757
100
984
659
619
168
386
191
294
89
502
900
941
813
419
618
689
717
300
859
354
327
745
267
28
61
128
866
178
67
838
388
771
400
176
114
637
945
610
136
719
754
865
716
72
68
487
371
666
778
591
652
464
138
850
46
966
206
528
933
808
702
471
670
508
392
839
474
915
588
793
747
840
94
804
476
885
111
152
994
176
173
433
845
643
38
478
399
171
936
360
476
531
419
496
696
392
976
870
236
670
677
787
16
740
340
60
362
737
789
272
963
857
676
966
663
588
203
199
623
980
664
408
210
163
950
286
80
876
558
694
842
564
824
944
40
323
582
551
573
81
734
12
661
651
568
849
922
779
471
130
316
150
261
387
649
785
226
711
958
862
697
29
859
564
621
378
576
894
337
824
941
478
97
927
152
826
716
303
322
95
566
419
95
870
362
768
760
375
869
495
253
949
467
214
264
179
612
813
12
181
392
457
969
463
872
525
578
810
521
335
556
769
88
713
887
285
516
413
679
637
941
260
826
137
773
800
266
85
137
217
685
301
980
489
707
115
830
378
901
63
281
341
950
758
583
944
214
252
565
833
910
206
391
615
681
73
350
544
863
952
765
900
574
840
446
73
609
398
117
569
660
988
822
320
386
964
536
855
982
351
268
656
674
609
839
136
760
163
365
670
595
391
59
517
202
351
473
503
474
296
811
408
781
876
526
634
304
391
55
831
479
76
870
175
630
16
554
199
933
828
98
970
467
437
244
187
657
970
963
900
185
931
80
866
601
607
795
72
694
743
336
57
414
409
264
244
576
665
708
215
105
683
202
863
314
147
347
375
582
62
124
38
954
897
865
668
476
875
371
576
542
761
333
771
191
199
149
843
823
416
551
508
394
554
381
180
381
806
247
438
772
624
68
409
978
123
479
496
576
209
469
551
927
134
93
982
221
270
991
284
658
458
726
402
114
362
897
359
713
185
542
978
593
677
354
49
200
249
289
267
615
90
27
141
813
349
640
488
825
198
510
820
443
813
911
174
79
158
738
172
548
587
496
35
822
132
23
854
208
460
551
526
470
134
147
888
65
428
638
400
336
740
479
752
663
35
979
45
677
318
305
870
215
333
159
584
711
578
937
941
739
442
393
844
462
143
659
728
540
566
760
473
51
158
700
344
535
863
663
863
664
704
693
653
569
268
912
244
611
978
942
128
270
13
751
937
846
597
971
479
572
507
931
483
250
852
718
758
868
380
392
514
456
675
138
515
550
227
604
789
657
308
103
506
704
347
574
225
645
847
515
829
701
404
477
101
877
111
247
609
942
341
773
905
179
236
102
867
712
443
578
980
296
615
896
48
774
616
214
139
225
533
949
753
189
657
47
467
543
504
512
967
623
826
548
274
202
238
244
205
986
151
213
134
893
384
182
521
978
341
321
228
609
99
690
504
107
94
672
592
361
413
586
507
690
627
842
486
322
674
560
187
287
928
976
652
746
473
864
912
422
845
23
809
203
154
85
578
84
748
739
937
229
368
402
624
974
931
498
871
146
157
372
941
375
771
597
517
493
594
768
29
271
347
884
110
600
970
756
527
565
835
75
470
827
802
811
422
264
298
759
935
680
361
300
238
253
907
878
431
363
329
186
465
329
662
799
974
448
486
270
142
592
965
76
363
830
597
583
264
887
43
909
942
195
376
10
339
827
326
666
569
852
693
618
814
706
883
655
787
661
965
468
752
44
885
940
728
627
309
408
829
520
977
351
17
611
476
695
549
27
237
762
899
779
931
758
904
515
138
522
315
336
855
965
122
17
805
56
846
777
385
76
74
870
711
281
100
988
457
901
200
114
419
24
905
150
565
957
54
418
892
932
921
568
681
355
489
82
391
718
42
624
689
615
15
20
915
258
319
585
387
136
170
21
665
95
758
854
464
309
670
590
250
926
427
750
977
310
738
832
156
100
570
82
806
95
210
784
274
833
437
472
452
249
861
836
161
524
779
545
183
186
354
504
629
395
14
667
231
474
967
301
896
742
61
543
111
316
617
372
920
23
997
910
920
958
123
924
724
160
686
183
741
806
345
507
735
191
122
565
610
118
601
829
909
25
153
260
368
538
776
230
451
225
563
805
296
106
888
710
327
282
496
357
222
782
72
892
717
16
57
983
286
97
892
67
593
916
464
617
409
620
619
941
818
424
987
540
931
351
238
124
392
365
84
486
936
79
750
26
909
369
293
374
414
406
487
277
766
844
584
628
908
752
813
286
99
510
763
205
649
863
550
336
236
913
839
540
524
348
547
917
109
58
116
536
248
459
399
535
992
730
425
861
793
538
525
816
752
923
920
604
499
113
487
192
110
338
626
100
54
955
693
960
492
556
316
218
571
127
631
377
778
861
245
442
285
232
24
300
555
886
411
240
182
269
525
786
932
479
19
188
953
397
901
471
491
121
859
96
490
20
52
438
649
392
998
309
759
370
122
722
48
309
192
220
36
597
543
43
447
584
67
375
117
935
649
56
788
712
754
993
755
524
695
714
478
172
90
405
512
217
813
961
238
287
675
963
232
906
506
256
134
407
842
627
958
722
789
110
976
681
528
387
490
210
52
477
202
613
472
532
339
991
898
856
147
895
970
117
399
228
871
753
537
441
707
506
964
405
237
899
362
46
716
599
364
640
936
87
347
540
567
85
322
755
875
481
507
856
985
78
664
142
209
558
669
413
104
201
574
929
861
294
270
35
147
513
946
247
196
287
593
693
91
928
55
471
733
81
368
844
316
320
481
509
784
26
83
411
212
906
698
551
887
528
727
351
533
438
690
765
938
637
842
30
278
278
941
32
551
855
226
21
746
974
921
356
137
656
634
904
526
169
175
165
115
355
229
936
63
560
261
305
980
70
975
520
980
59
556
101
337
518
635
911
566
293
773
632
690
358
966
950
317
330
133
460
972
35
627
697
722
744
247
762
397
659
677
577
815
192
66
192
122
190
815
265
895
937
950
854
502
447
57
611
497
568
633
995
448
516
288
329
47
587
237
407
587
903
32
518
648
346
745
919
158
578
247
337
514
915
694
282
714
616
790
247
249
37
273
792
87
511
137
197
116
722
894
334
284
807
944
782
348
911
273
183
352
133
906
721
722
464
669
891
119
295
393
662
47
142
99
308
614
596
757
226
157
895
287
469
133
320
707
113
983
261
543
302
900
315
137
646
87
412
361
201
827
937
875
701
834
212
626
371
126
875
119
243
48
554
366
30
826
393
260
443
966
68
900
321
285
282
402
199
700
257
47
18
690
74
939
804
151
145
295
695
597
418
22
750
40
154
560
838
61
184
374
379
359
600
437
260
860
659
584
221
196
449
392
153
948
52
61
901
940
227
933
310
331
903
443
593
298
924
452
579
925
374
562
248
577
115
692
134
209
872
704
832
149
355
980
430
894
356
774
514
63
422
604
380
502
941
723
968
416
213
939
475
348
41
965
301
333
410
88
579
338
842
273
937
85
637
371
160
321
546
547
785
262
588
741
629
358
581
575
326
762
616
121
732
349
678
778
563
282
869
69
646
341
441
227
509
993
435
563
775
30
719
81
761
692
609
415
350
672
231
49
664
686
841
290
830
637
776
701
663
538
440
317
201
106
912
597
843
220
883
381
422
512
451
750
778
22
931
152
880
100
60
868
836
348
231
839
834
936
644
568
264
323
647
216
452
932
751
851
318
886
496
599
825
595
29
41
621
541
414
968
803
642
76
978
835
390
824
715
730
139
645
814
428
383
203
904
833
215
97
310
824
186
300
92
471
662
642
298
602
352
905
11
836
170
550
544
320
850
436
71
86
379
584
896
833
223
21
775
255
994
834
379
114
278
780
847
286
91
276
445
85
618
482
794
821
595
644
666
489
96
361
449
306
310
159
363
251
995
114
496
394
642
798
579
780
619
820
565
481
468
133
720
471
880
870
662
512
114
718
820
776
532
312
136
498
70
759
642
882
57
250
218
458
347
739
985
63
712
410
362
981
359
736
229
889
798
120
603
479
663
271
573
305
74
241
575
331
905
391
78
608
713
199
531
830
409
468
790
705
667
60
110
719
751
962
739
342
503
491
564
175
390
861
268
99
899
197
509
649
553
831
329
777
216
22
788
447
462
815
576
465
307
422
780
712
258
668
342
845
12
161
406
859
148
843
575
104
950
640
444
81
604
84
388
62
944
909
422
843
362
967
748
243
263
752
128
941
446
694
851
485
929
100
541
363
451
592
186
851
434
56
943
795
343
502
836
26
196
898
934
930
643
491
658
271
578
132
320
219
820
991
81
231
669
962
345
295
426
493
722
970
45
915
929
838
92
512
506
918
516
177
547
873
592
236
220
818
669
841
739
131
994
566
254
338
399
858
294
294
847
784
630
985
151
778
627
557
974
468
996
381
60
679
248
626
694
531
203
875
765
317
665
245
46
437
860
641
283
526
695
592
682
917
569
21
541
437
689
888
440
883
568
22
119
61
111
247
740
725
370
615
45
79
405
444
67
641
61
641
840
451
765
257
105
170
263
359
693
767
337
373
225
476
432
962
68
236
935
907
793
580
343
121
184
255
242
514
799
793
140
212
47
639
432
755
165
678
449
601
311
759
640
727
988
84
456
983
539
996
627
659
858
565
522
712
335
297
203
831
189
694
320
511
541
374
648
435
604
210
303
328
128
329
46
389
191
557
554
184
219
254
472
536
247
229
950
270
621
150
427
597
95
702
908
765
447
941
682
120
437
488
464
780
567
914
876
107
318
195
124
844
978
373
277
800
807
385
380
748
771
870
569
641
225
218
869
892
186
847
835
266
808
422
926
978
304
337
669
867
986
958
797
870
377
602
94
963
421
271
495
683
201
79
287
753
544
208
775
349
385
247
536
387
495
599
974
52
649
102
169
331
415
102
480
212
33
486
600
449
71
177
389
356
237
601
524
218
153
440
516
89
368
640
149
695
46
576
422
961
864
707
748
135
502
268
948
279
444
232
251
225
64
347
944
531
187
668
17
275
400
499
384
184
446
11
152
453
426
306
980
488
980
747
32
125
332
203
891
241
273
786
828
327
482
904
648
735
800
874
710
249
83
564
513
308
599
463
326
815
715
424
38
940
640
503
454
120
344
781
393
46
646
254
592
595
446
538
119
924
777
569
653
134
355
407
611
380
676
108
673
701
123
143
143
785
852
186
115
641
276
121
692
638
79
921
80
183
652
683
159
792
296
535
363
782
341
295
673
175
165
926
501
883
456
198
407
336
431
814
525
933
67
613
235
870
738
218
378
704
45
226
456
407
596
177
701
632
378
781
708
665
661
251
409
843
760
715
770
409
773
107
444
981
621
24
739
477
104
446
488
700
32
65
458
54
26
891
298
838
496
809
40
476
318
751
974
443
947
290
230
95
895
598
417
587
600
932
562
787
537
935
633
28
797
565
957
42
88
409
364
332
961
874
539
274
588
714
131
71
45
371
662
798
331
747
353
918
659
519
190
872
383
633
962
719
749
991
826
479
728
53
126
247
770
261
734
243
677
277
580
666
355
754
449
846
603
558
188
467
64
979
759
90
503
403
703
19
783
134
970
948
367
426
802
58
331
167
427
586
779
798
56
923
438
682
844
213
71
322
838
147
377
820
154
946
269
441
43
951
424
967
60
194
326
691
862
719
505
25
13
957
626
830
290
79
131
91
618
747
461
909
249
876
84
841
47
401
169
419
879
234
803
640
869
148
853
941
124
150
320
346
359
503
999
517
736
438
495
408
283
644
435
273
87
329
287
612
785
123
682
862
736
53
183
80
52
426
601
212
267
485
975
423
271
835
476
842
539
590
398
318
793
385
308
337
886
829
913
310
832
324
484
144
201
548
608
857
268
491
791
398
371
507
136
148
715
621
113
35
310
335
978
13
25
798
565
753
322
606
189
142
331
255
79
909
270
214
674
577
847
390
545
872
87
244
232
881
381
282
907
959
63
194
468
613
990
745
973
160
93
41
352
103
112
830
772
89
631
544
825
218
889
987
138
970
689
762
928
320
73
706
859
777
76
700
261
81
608
441
145
90
687
947
62
863
608
414
541
328
138
342
654
754
305
699
378
184
831
303
661
60
16
156
333
926
283
600
168
608
867
285
333
926
605
936
342
523
501
586
269
81
925
217
894
117
26
482
277
456
41
998
721
328
348
669
218
949
486
174
130
247
87
290
967
156
649
899
384
74
616
928
154
50
155
308
157
104
227
922
592
852
433
510
363
969
106
454
542
261
797
961
229
66
816
691
314
905
150
484
651
850
962
100
922
328
997
788
679
809
842
786
973
867
472
78
250
333
398
55
735
983
57
556
91
932
593
699
649
172
503
723
452
607
510
347
595
20
226
801
865
699
684
589
75
891
994
736
607
421
489
651
564
606
507
695
731
177
312
119
558
275
446
341
805
69
43
80
452
719
982
601
774
919
779
140
342
679
188
24
117
364
99
235
806
13
341
200
469
171
239
986
647
250
340
97
354
118
27
582
608
680
335
267
602
982
935
259
963
313
348
303
559
696
492
252
818
890
912
751
273
855
707
857
765
915
850
229
147
464
106
721
672
934
930
386
731
808
121
783
508
737
500
352
907
199
656
50
656
658
736
424
541
178
38
432
56
573
547
545
898
545
602
423
511
955
424
521
496
896
718
988
635
216
98
610
841
204
643
686
171
137
553
136
683
629
858
882
131
741
575
83
31
253
937
405
713
613
104
352
208
651
528
670
410
383
951
483
141
99
920
217
61
135
125
567
239
824
879
52
987
224
913
879
35
385
278
685
334
422
154
754
898
226
870
204
220
712
581
475
922
434
190
536
672
372
553
380
471
529
384
142
958
935
684
929
782
512
976
39
467
748
177
312
712
309
930
500
32
95
213
888
538
196
190
759
372
997
676
213
158
766
633
797
446
194
403
960
139
44
78
847
247
427
968
495
259
618
638
514
133
570
248
318
805
312
313
530
807
603
737
507
394
222
673
761
878
282
788
932
524
996
683
478
390
566
309
487
404
718
361
132
424
433
711
460
828
719
944
448
996
243
398
622
549
222
999
618
860
823
190
725
246
223
923
69
659
755
741
180
151
917
858
542
986
914
198
410
279
468
184
920
326
529
400
273
395
395
933
63
874
260
492
869
576
592
907
116
137
973
245
377
510
493
962
705
710
475
287
656
672
233
826
882
116
254
881
417
198
60
303
286
792
921
702
427
344
679
454
568
741
833
546
731
319
199
339
127
85
718
92
779
323
308
169
63
922
354
952
208
713
229
253
814
584
698
840
343
897
48
106
836
36
954
249
162
496
300
691
690
830
510
570
634
643
34
644
198
809
144
645
544
647
889
505
106
426
534
820
994
373
723
711
773
391
364
532
280
905
709
167
932
943
366
277
611
931
372
403
166
720
784
752
47
812
846
74
99
111
251
554
854
796
897
373
977
597
767
591
271
609
726
291
883
507
103
598
256
687
880
117
540
742
427
756
554
855
881
942
965
725
818
371
530
671
170
542
537
843
595
142
648
72
376
540
861
311
591
118
83
963
94
304
16
292
871
829
485
901
354
987
587
117
730
846
977
726
486
455
875
597
493
74
823
54
48
407
231
404
404
247
233
289
385
59
695
448
248
559
421
279
289
782
93
836
153
873
466
790
205
589
643
305
454
766
280
662
299
46
273
43
597
551
427
286
97
726
810
860
32
631
193
268
480
813
419
153
100
718
62
296
205
883
774
645
207
903
844
888
680
705
549
77
508
297
46
100
855
475
540
510
991
180
49
72
484
963
125
82
525
935
43
870
421
920
803
201
556
477
904
68
629
514
320
665
655
969
219
392
995
492
660
858
369
30
651
583
630
778
240
101
802
309
306
460
909
163
351
300
535
974
112
779
156
195
521
988
892
34
946
580
117
520
99
760
294
637
430
626
897
47
977
584
948
27
665
835
866
178
159
850
55
531
715
187
612
856
67
68
685
776
220
908
798
94
102
168
812
927
684
51
494
219
54
604
246
66
848
444
20
209
625
924
32
797
268
204
228
336
519
606
369
812
468
899
737
208
20
793
357
138
903
63
878
938
695
85
310
688
805
521
913
774
866
777
684
699
660
805
597
688
345
61
827
377
511
310
996
948
211
443
447
358
754
525
117
648
86
54
764
161
652
565
980
84
98
953
296
449
681
213
109
350
476
540
640
521
400
777
480
144
107
536
476
119
292
277
262
353
381
654
641
365
923
894
348
565
155
941
829
25
925
123
789
750
684
957
808
477
141
842
358
577
670
455
664
899
599
33
143
454
444
803
695
34
385
506
25
754
483
659
707
638
310
207
974
407
271
116
527
635
962
492
708
622
165
634
715
904
419
59
413
326
870
425
324
645
521
370
999
169
711
247
637
908
262
418
186
464
254
225
121
464
187
162
211
483
350
464
926
21
245
759
564
702
784
683
552
106
170
915
545
628
12
567
509
759
675
621
986
265
112
889
916
84
686
45
608
293
873
307
898
186
697
186
99
876
342
808
309
91
843
409
713
244
168
137
539
899
66
243
665
485
615
952
391
745
974
671
565
289
791
695
857
393
925
213
568
996
900
206
62
623
358
245
13
880
805
130
952
627
394
94
392
508
508
271
48
83
330
144
164
253
861
234
952
611
711
145
111
894
131
102
457
741
972
150
843
885
895
381
211
498
122
880
424
862
106
273
525
306
866
813
696
840
892
272
227
470
289
39
353
570
626
137
460
731
941
721
560
293
829
615
705
70
958
761
788
743
649
803
17
22
817
533
750
469
706
825
677
810
24
429
884
240
209
645
591
963
67
504
766
189
913
426
264
976
913
995
891
604
313
740
823
566
154
770
613
436
110
727
986
913
124
537
794
284
284
961
398
127
379
803
904
778
50
18
308
933
549
85
729
439
751
835
994
230
633
835
858
34
958
47
11
135
337
850
901
565
477
99
512
122
827
568
96
935
752
605
134
658
198
367
580
334
495
622
851
543
283
113
662
16
989
737
471
254
640
142
706
834
493
741
896
304
525
43
310
799
183
219
797
589
773
224
717
176
863
10
378
336
100
343
883
103
430
15
970
510
425
578
640
290
421
449
909
218
884
774
264
252
702
693
506
743
235
472
609
951
158
228
485
21
378
357
939
631
400
251
944
143
930
367
369
107
722
290
636
121
496
513
483
672
81
665
658
623
745
719
420
276
296
694
380
189
659
172
337
82
254
469
543
167
510
43
853
699
978
275
313
133
203
83
318
739
96
939
761
166
908
19
744
602
580
115
407
872
513
50
570
55
308
599
618
543
996
983
138
607
565
91
222
33
973
167
191
971
198
210
774
173
318
963
557
397
720
648
487
150
905
320
414
956
967
132
521
157
887
362
681
875
609
18
270
84
942
392
485
717
129
616
90
363
247
881
297
853
671
316
410
798
602
856
622
880
401
834
949
514
19
533
842
813
397
403
405
862
644
943
672
496
389
177
642
648
922
891
841
231
239
466
160
992
353
780
495
941
679
36
448
685
516
627
198
107
521
279
222
348
67
88
120
111
799
93
825
23
534
593
561
786
536
87
502
217
599
395
881
596
233
742
712
673
582
754
602
59
165
452
49
458
400
345
829
465
243
617
813
407
178
875
667
786
83
419
630
333
688
438
56
42
655
823
690
479
345
107
785
412
337
241
272
504
539
228
897
526
483
715
639
657
314
63
465
972
545
904
831
345
629
639
551
986
583
260
945
882
461
873
65
90
210
555
111
71
321
403
150
200
10
954
562
746
854
414
928
809
782
17
73
311
466
475
599
597
266
335
337
687
690
558
532
264
945
926
688
563
651
120
944
292
256
853
635
226
83
627
410
255
915
667
157
322
722
810
163
704
306
585
524
282
408
989
518
385
887
562
918
899
580
160
166
139
206
406
610
926
571
25
613
787
713
66
43
537
335
862
819
967
504
535
904
262
167
589
662
444
362
287
603
543
350
314
290
380
657
244
76
783
254
768
462
822
550
339
926
328
722
737
944
605
577
293
648
643
934
746
462
311
835
548
422
527
418
538
490
37
748
992
432
877
31
701
361
258
136
34
613
258
793
961
338
331
162
388
963
414
643
311
172
928
438
913
771
643
784
116
850
956
644
876
39
377
866
728
31
656
218
576
591
275
182
641
992
263
567
877
198
924
670
439
619
590
340
574
177
537
26
127
95
650
728
749
809
512
926
676
878
922
77
866
344
831
399
785
536
747
19
11
299
507
799
565
975
452
449
305
444
941
73
234
236
905
37
494
476
348
61
437
961
959
454
358
902
248
270
502
84
649
115
672
872
661
11
910
299
299
409
600
357
420
568
40
988
924
171
672
318
834
431
777
160
891
958
102
64
114
286
352
570
462
229
571
660
948
79
823
550
453
452
855
817
517
740
911
583
890
219
256
370
391
701
959
56
536
348
127
620
418
19
429
195
225
975
439
693
265
685
578
141
918
941
151
400
484
599
49
349
104
667
66
259
16
989
78
750
753
197
437
199
170
509
155
470
565
776
680
806
438
398
112
449
981
150
677
423
55
971
957
803
160
341
253
914
330
189
390
562
578
438
412
235
965
892
767
95
952
682
222
233
431
949
83
955
269
234
735
806
300
309
416
16
917
480
241
618
571
956
282
599
634
993
646
465
621
108
633
437
407
840
833
189
684
211
846
986
993
243
787
353
52
775
408
855
212
152
72
930
623
341
710
681
507
650
622
138
678
936
412
641
901
194
242
885
556
367
929
341
531
893
350
698
217
113
589
651
856
327
157
36
537
89
492
960
891
788
347
48
896
785
71
168
748
485
523
658
131
781
519
170
452
429
398
466
970
42
224
256
818
936
488
230
89
556
338
632
656
35
580
255
163
458
757
252
437
153
406
83
57
975
242
192
464
179
600
960
464
153
869
24
114
714
687
612
811
628
196
738
551
643
598
963
818
701
827
359
717
855
366
747
116
834
781
499
139
521
946
428
697
274
597
143
978
207
201
98
872
418
698
505
470
505
284
907
605
683
784
385
837
972
294
391
407
732
816
877
728
226
329
522
730
319
375
934
732
962
626
244
976
258
787
671
938
36
539
156
316
296
512
381
842
11
402
217
718
61
190
48
834
156
712
140
931
596
818
721
325
127
590
446
454
324
761
370
640
891
735
504
237
712
233
760
482
974
814
429
925
905
801
168
95
139
709
560
181
331
419
155
579
346
619
120
410
716
421
410
146
975
518
82
640
539
147
293
969
852
647
629
834
151
700
663
694
274
68
513
863
175
121
797
30
148
461
615
315
318
89
538
19
113
165
157
804
800
38
815
260
615
871
811
182
368
417
827
370
904
912
367
912
638
38
345
592
905
866
739
818
133
254
605
123
486
132
787
158
660
25
41
870
19
252
878
882
60
295
229
637
328
478
60
506
485
443
739
364
682
916
785
350
783
533
701
702
524
545
658
13
258
513
452
92
205
401
674
689
492
631
188
936
154
216
352
585
506
478
50
636
102
175
893
575
266
176
324
804
589
778
695
369
515
689
559
924
365
296
955
114
237
740
745
502
319
195
390
183
594
991
261
933
692
625
458
322
795
92
922
267
384
449
708
970
448
927
287
657
342
924
572
56
47
490
10
812
951
734
212
256
352
681
839
797
205
882
35
19
423
591
524
528
616
20
264
147
908
674
867
884
230
635
651
165
444
258
226
98
874
712
866
84
83
824
703
29
521
305
802
390
695
437
436
124
454
375
462
783
818
249
976
964
433
412
735
537
315
521
551
382
496
475
787
260
427
697
312
373
836
609
305
788
243
304
828
283
794
916
699
196
729
426
46
940
461
301
314
635
975
517
37
154
147
48
244
959
564
334
962
113
241
304
65
519
944
882
702
204
708
36
603
94
345
105
779
15
519
61
108
210
561
330
125
238
786
596
242
900
97
840
219
773
613
477
261
819
739
833
12
592
109
346
841
844
555
389
160
280
834
298
891
329
184
197
325
498
166
980
873
812
337
383
511
89
51
313
414
401
586
90
178
516
313
563
873
421
27
370
422
491
826
539
682
331
933
994
27
546
791
749
743
216
961
568
488
494
109
469
140
532
852
251
857
458
527
113
947
838
692
995
651
566
976
793
326
820
627
997
320
211
958
735
912
95
73
980
88
420
336
872
138
740
316
474
613
944
524
534
82
125
336
910
17
288
412
345
344
104
403
68
832
647
525
493
677
385
727
587
907
410
914
274
312
420
318
975
386
805
837
777
473
199
799
912
134
699
294
461
874
870
522
190
645
151
210
917
682
366
49
787
33
640
913
906
599
283
835
579
420
813
260
724
483
55
571
827
105
429
496
553
276
591
31
882
142
517
665
576
309
211
508
40
588
808
259
849
506
848
540
576
70
343
377
861
967
423
886
842
421
138
741
970
159
129
596
483
567
950
730
420
500
749
559
923
717
279
674
876
409
299
759
468
289
55
345
519
75
219
896
49
909
542
260
634
689
936
300
663
963
246
571
433
616
894
847
923
525
358
406
466
59
699
253
661
280
976
602
319
585
884
222
251
439
173
48
307
761
640
817
838
151
637
900
332
984
864
626
253
469
608
472
764
701
904
947
216
340
243
311
849
499
290
661
762
901
145
518
919
459
696
967
803
983
339
742
997
617
377
979
539
760
120
626
951
370
465
827
871
488
866
112
564
289
998
800
956
389
779
619
211
158
222
533
812
753
401
652
160
906
201
75
126
778
307
118
318
66
443
449
634
514
698
805
433
395
724
130
795
183
440
377
252
335
349
424
368
62
634
904
743
70
477
370
819
807
329
95
806
630
841
828
634
286
544
455
837
23
995
59
799
450
335
985
297
55
154
251
708
711
394
467
445
364
606
213
677
188
376
893
637
348
318
417
615
778
206
892
874
473
570
713
253
857
85
417
517
741
303
356
504
684
351
252
589
375
781
111
558
669
966
21
502
240
820
18
209
256
490
663
904
544
496
267
739
547
514
885
926
935
420
851
953
304
765
616
519
410
137
274
168
215
619
804
702
227
597
839
760
115
188
840
357
382
977
342
281
625
148
796
376
457
226
547
811
594
813
883
899
135
79
327
290
198
632
892
944
948
104
633
537
10
654
557
553
167
751
27
169
623
100
152
442
445
209
874
660
83
989
337
824
809
39
396
97
257
306
972
702
627
49
857
513
474
925
669
126
914
428
477
793
799
660
675
907
790
770
613
930
102
78
755
403
664
193
979
804
624
20
905
673
335
709
774
389
505
433
825
911
635
182
130
729
841
217
500
517
734
651
192
476
457
726
190
189
144
877
827
696
262
802
615
347
415
280
473
587
462
464
323
680
624
589
642
919
996
191
786
823
296
980
916
255
892
280
603
848
668
31
347
965
382
493
598
208
378
858
605
464
795
440
564
166
430
862
523
590
799
323
749
788
480
976
951
479
228
614
116
64
289
41
762
511
896
249
281
503
403
33
889
874
667
759
263
123
258
158
439
976
136
65
406
821
719
41
193
53
380
962
904
816
962
108
471
676
140
730
175
430
397
869
653
771
989
781
329
412
135
508
939
923
742
423
222
179
359
44
876
357
881
476
947
956
292
24
859
958
934
749
626
715
692
167
400
747
744
725
689
863
895
94
97
152
101
938
744
722
866
404
213
751
102
570
724
669
781
417
387
21
468
656
485
748
859
136
965
219
775
226
102
196
657
906
337
185
274
561
328
882
531
221
758
770
550
98
946
192
528
935
450
524
618
385
772
629
478
982
709
234
21
758
452
408
508
14
337
526
208
777
408
803
258
480
865
300
82
599
770
949
16
899
351
827
289
937
461
888
696
71
722
277
918
921
349
605
430
494
929
217
522
607
429
960
629
959
423
971
367
722
839
85
597
21
495
144
724
987
489
909
776
802
970
682
816
603
509
415
998
413
266
582
783
386
364
750
226
386
965
344
393
643
647
73
856
140
354
544
321
380
596
137
827
232
264
836
432
49
340
354
27
978
861
370
861
715
843
148
851
697
979
143
452
165
632
407
688
964
518
543
270
928
735
402
44
332
577
515
508
857
424
220
339
632
899
491
688
382
978
583
263
270
461
567
287
842
651
797
20
919
741
919
191
483
850
59
196
227
703
749
284
217
372
102
990
258
692
671
814
487
885
326
145
17
957
904
31
158
685
205
867
729
660
226
291
607
598
432
88
777
923
189
272
575
927
514
761
833
321
225
118
69
864
521
647
821
200
542
607
141
659
206
399
596
522
974
524
604
481
41
831
717
383
231
775
453
498
86
549
899
697
793
882
321
778
954
754
15
940
871
478
214
595
152
303
387
212
384
223
619
991
426
962
102
929
571
788
100
628
636
935
897
945
992
306
91
36
367
398
207
851
536
64
571
996
117
472
709
844
664
377
793
418
594
907
278
861
549
181
89
146
501
78
513
836
683
654
280
206
338
856
594
941
207
487
453
749
339
632
655
993
423
139
934
532
981
174
505
378
927
902
788
906
760
493
620
831
864
33
45
922
264
98
775
582
413
23
593
482
775
610
793
589
366
87
782
829
911
606
106
942
318
98
954
174
951
98
514
268
330
26
245
407
648
490
499
578
393
364
935
807
394
101
316
79
450
639
632
932
592
739
785
76
518
465
831
621
503
412
546
472
186
127
216
52
75
276
949
971
357
433
102
340
22
839
466
266
539
682
655
311
364
323
419
296
151
295
28
162
111
936
414
810
182
597
961
677
180
76
170
723
315
632
24
518
299
287
442
43
810
315
364
715
64
103
82
395
394
548
922
240
140
936
218
215
655
309
821
851
571
522
614
176
383
686
432
72
434
860
714
742
257
947
643
310
177
195
284
529
558
489
229
99
673
404
196
894
329
376
19
583
296
977
699
924
797
946
263
343
985
478
144
811
285
403
42
156
800
382
813
753
356
974
56
592
81
905
88
266
522
718
606
421
712
878
942
929
58
857
695
46
637
250
980
643
895
219
996
632
401
499
886
360
641
555
706
981
476
886
579
626
193
267
72
839
78
186
859
364
10
773
581
350
143
194
574
633
856
615
980
249
314
128
379
402
296
653
629
298
876
706
351
973
292
309
495
743
855
334
697
776
521
99
965
654
945
377
883
67
135
639
201
262
228
69
796
188
291
374
401
532
264
849
379
478
735
929
471
248
773
79
51
282
293
753
183
597
101
418
264
551
409
431
969
242
444
702
658
371
830
996
72
242
939
442
622
119
501
356
338
328
854
934
687
83
564
828
884
346
690
518
478
989
941
982
14
935
431
550
761
198
480
44
821
961
647
575
546
938
899
668
364
178
691
308
427
204
383
672
676
156
357
779
506
344
54
917
679
577
222
539
208
393
281
432
820
449
780
840
854
302
152
736
871
757
618
451
529
485
116
769
365
259
352
834
152
176
860
172
565
374
425
420
972
296
346
205
923
668
339
578
837
132
325
73
405
422
706
468
116
864
656
726
211
236
349
268
914
536
930
137
816
936
651
228
38
637
73
492
936
268
119
137
508
702
807
872
244
762
139
339
277
722
221
989
196
302
366
876
890
856
792
344
875
894
95
756
254
859
772
721
64
796
343
910
809
154
990
486
439
902
378
245
627
463
125
989
305
554
350
237
669
325
611
681
979
844
409
913
185
897
551
439
887
383
416
399
559
544
146
417
734
757
605
249
577
201
655
404
236
468
372
873
503
557
703
920
597
408
537
691
802
675
867
883
450
51
789
414
831
271
646
466
451
924
528
732
747
397
449
299
675
569
567
248
698
401
842
290
41
829
176
623
714
156
378
786
312
407
418
380
738
176
129
123
316
690
443
94
453
729
900
97
349
407
665
74
279
135
975
252
130
545
133
326
85
543
728
492
64
897
967
794
977
671
481
314
751
622
604
127
828
464
28
365
684
859
379
32
287
383
430
268
827
736
404
28
819
124
733
446
844
701
68
622
143
690
465
458
370
966
584
922
939
233
523
207
570
181
924
762
301
299
460
720
34
329
102
626
375
470
564
416
716
230
652
57
142
111
803
889
399
145
422
435
860
137
177
67
712
290
247
539
849
863
879
48
436
842
962
36
306
639
99
188
354
216
853
511
879
454
494
437
475
722
120
483
448
265
347
129
256
95
353
368
478
70
502
788
841
593
600
469
181
676
686
432
156
788
357
910
549
931
54
343
957
378
381
228
681
56
89
802
769
83
458
244
421
829
827
970
21
427
899
585
251
293
116
902
317
147
227
374
159
181
353
150
749
417
172
382
635
46
781
701
195
301
82
617
898
768
595
864
853
986
870
511
219
920
973
262
982
412
178
462
526
964
805
543
493
58
756
589
102
236
646
975
303
817
651
234
637
319
212
90
610
218
654
763
619
981
657
194
219
339
484
468
952
444
588
464
154
697
434
551
60
262
243
929
466
829
342
572
437
701
156
923
502
413
722
279
142
159
763
285
925
455
135
282
568
669
396
726
51
797
381
279
883
565
835
250
366
825
30
897
18
569
774
135
237
145
244
820
55
671
996
284
110
179
411
210
659
932
376
227
73
626
851
163
701
879
44
762
841
794
319
321
429
549
874
41
452
465
93
211
152
268
851
963
336
34
353
855
82
329
752
535
722
789
216
37
351
51
156
399
278
818
443
13
59
379
196
913
309
349
205
412
789
801
789
146
293
757
132
621
343
492
673
45
526
859
317
965
323
104
837
792
103
248
365
900
925
628
469
162
972
729
230
587
386
613
929
736
681
346
549
896
274
260
862
137
663
386
167
595
65
82
673
911
380
232
100
51
935
247
490
62
242
964
122
479
825
994
381
814
236
889
140
465
747
57
375
363
525
296
862
812
832
234
674
322
767
561
116
286
113
864
87
963
277
642
406
30
661
16
113
225
540
336
582
88
854
268
22
159
542
527
89
276
916
264
688
754
86
122
522
289
150
739
995
678
683
191
677
406
855
733
485
170
408
360
981
177
481
452
243
924
266
381
117
212
393
987
870
916
334
410
511
314
616
167
178
976
831
933
166
301
308
758
954
148
637
72
289
789
946
900
397
340
863
780
305
162
654
174
293
558
827
422
156
422
879
507
590
54
417
936
573
39
23
767
888
112
608
445
148
26
750
598
748
301
703
707
540
543
948
524
838
780
582
207
38
190
111
820
881
900
777
728
616
499
699
485
694
536
341
53
800
609
958
425
400
382
345
739
64
591
952
111
151
829
517
44
456
413
417
897
234
101
220
714
81
586
71
603
465
681
195
133
11
17
171
475
118
817
417
154
493
495
701
947
752
622
208
209
697
860
781
420
213
325
85
282
646
382
996
140
661
865
863
554
249
980
598
375
143
227
832
138
302
460
218
724
243
599
700
100
995
124
114
718
127
101
614
194
33
907
764
946
282
803
366
543
788
41
856
377
330
403
865
264
709
316
693
697
861
212
141
911
717
248
897
899
170
745
906
295
203
224
240
862
303
961
906
160
155
890
714
682
293
147
595
433
754
660
582
392
92
350
650
925
282
297
520
861
654
364
450
968
153
195
739
526
707
561
151
934
24
898
526
46
936
129
723
294
547
286
823
751
290
293
57
691
613
945
57
891
753
170
813
947
437
627
968
604
649
499
983
264
845
337
53
495
568
898
922
64
715
252
401
313
293
865
131
208
227
696
592
351
234
598
552
645
307
977
395
157
220
541
219
845
202
112
537
616
561
331
328
348
748
105
295
340
37
743
304
575
75
268
342
51
481
431
705
830
205
822
14
249
566
469
39
372
604
12
298
718
403
743
477
393
988
990
232
985
28
549
733
932
275
610
830
465
62
368
329
29
893
352
625
871
312
895
84
772
769
370
973
323
723
75
875
139
197
401
29
645
31
897
823
246
15
238
468
15
982
703
544
430
662
580
298
745
985
346
689
118
673
453
229
135
765
65
926
426
370
503
590
376
505
412
858
18
103
511
15
705
825
978
662
660
994
984
380
992
57
200
777
729
489
106
873
996
892
414
24
962
500
354
607
801
43
121
433
557
470
731
253
21
18
833
940
328
23
361
967
10
766
707
275
707
408
823
246
309
752
890
949
517
640
169
825
712
752
472
717
100
786
743
667
273
509
210
835
281
810
757
433
659
494
913
423
714
225
312
623
798
172
677
201
700
603
463
470
519
104
952
939
867
112
817
663
184
973
316
656
955
861
900
919
227
135
767
880
727
846
754
807
217
83
551
551
238
118
790
402
900
509
113
346
562
254
749
826
285
73
16
675
363
530
694
909
414
539
377
841
329
447
941
316
701
224
599
111
489
610
650
812
337
694
60
893
354
724
374
730
832
55
830
253
113
542
475
138
111
464
619
687
726
537
267
57
461
666
676
777
90
841
808
552
554
468
642
285
835
40
796
71
66
737
397
747
35
811
634
370
362
29
429
182
875
888
908
431
468
379
902
296
562
798
753
598
62
779
856
314
969
832
469
705
133
410
484
366
873
865
385
500
586
771
757
569
748
337
881
186
34
238
693
526
138
241
502
518
771
806
745
85
589
728
391
411
137
345
949
645
206
38
28
702
357
946
70
842
651
270
73
620
512
837
279
228
516
521
703
753
493
459
533
583
769
81
32
140
888
580
949
116
759
960
722
323
156
165
18
722
194
226
463
652
829
402
396
842
814
107
214
219
528
451
475
617
192
771
118
998
165
779
572
686
118
641
154
827
682
11
449
121
228
821
141
458
13
68
989
145
566
725
816
41
671
416
151
247
45
635
919
517
55
686
308
253
62
638
987
471
38
679
58
585
644
507
937
538
118
695
251
808
592
919
837
547
799
275
143
477
924
909
586
363
138
532
466
637
734
819
669
543
862
344
857
622
949
562
287
836
325
686
810
842
773
354
954
293
213
675
107
351
322
869
97
191
11
191
821
491
722
329
250
715
54
742
224
143
38
532
722
62
939
150
531
267
814
495
989
191
776
765
809
369
807
321
437
169
597
191
976
847
46
895
238
991
576
450
14
682
194
681
900
960
232
300
430
658
488
907
625
592
177
839
198
983
183
527
311
170
440
883
492
509
932
626
819
763
913
595
845
527
453
438
861
155
993
23
627
600
132
917
765
203
54
795
543
996
582
122
749
381
993
450
756
858
757
576
587
426
837
409
162
660
604
326
447
756
708
26
661
70
886
454
947
658
757
27
643
348
144
443
714
189
121
319
336
154
875
645
72
41
802
615
276
696
555
350
775
184
967
593
188
916
221
288
106
204
684
819
272
43
971
65
496
915
526
495
708
333
436
539
933
307
696
613
648
230
447
370
759
936
550
583
547
962
115
239
425
401
873
550
305
578
34
489
594
724
235
949
582
943
666
300
801
31
286
489
199
558
805
217
375
695
434
901
663
435
762
402
404
734
947
607
555
590
456
137
816
209
39
943
569
965
347
850
393
322
643
596
356
751
623
764
947
86
249
490
690
946
319
940
838
533
457
22
736
846
815
96
600
32
151
205
884
538
160
703
376
557
577
357
470
436
628
327
288
241
632
746
160
418
510
354
664
637
195
798
584
955
237
481
727
708
342
601
113
27
191
113
671
15
192
492
171
701
364
486
944
982
553
519
327
831
245
37
182
304
998
687
116
911
173
100
38
954
803
447
500
100
893
416
422
241
221
309
664
880
373
223
196
312
852
871
565
109
216
799
243
306
934
953
126
619
554
343
57
760
426
685
415
451
940
122
361
860
952
967
362
859
976
37
645
993
314
519
465
210
93
127
836
928
801
778
137
933
343
886
222
218
334
520
773
736
25
867
342
187
129
524
640
321
72
138
177
355
747
909
92
79
353
558
616
177
545
524
819
67
686
363
819
990
284
180
536
303
758
557
95
975
948
229
55
80
521
898
19
363
503
622
455
128
889
410
714
216
642
370
161
431
118
281
156
970
613
513
720
573
534
308
938
290
125
904
356
999
718
678
409
598
300
788
804
175
983
231
228
149
384
137
15
451
62
681
399
799
269
501
980
512
206
922
876
667
819
759
399
564
829
329
488
437
753
959
865
766
356
821
335
428
485
362
358
760
225
311
555
695
507
565
314
445
813
805
383
261
337
17
585
343
867
121
451
716
266
635
171
747
429
399
814
725
511
98
538
969
766
749
974
609
38
729
463
367
126
642
193
284
796
784
905
719
78
510
38
115
113
781
158
167
382
349
371
861
633
439
217
707
312
446
567
506
848
256
733
228
824
816
764
502
338
770
476
580
278
47
396
948
667
470
367
739
858
214
57
661
984
845
570
234
899
447
445
620
369
565
136
523
430
445
687
722
397
368
382
247
987
908
622
578
656
261
771
104
457
969
399
812
19
575
101
644
101
693
754
139
961
365
733
710
191
541
635
165
47
62
448
895
998
494
590
733
947
24
851
272
969
977
921
240
980
313
755
159
762
983
980
372
958
757
238
324
462
701
266
896
309
235
838
229
307
909
836
292
335
996
879
415
226
136
504
892
402
99
349
286
306
931
230
691
417
266
17
590
13
24
160
323
143
704
391
186
90
358
820
287
79
816
391
459
204
31
809
299
70
587
421
107
19
431
263
125
814
344
41
136
927
175
696
501
372
614
39
82
897
860
623
89
383
433
711
826
587
626
333
806
401
538
955
150
845
562
384
542
269
318
53
232
659
695
925
974
871
917
98
697
401
619
978
103
989
999
285
695
567
418
218
175
316
221
977
58
347
669
281
851
171
529
650
428
683
964
544
461
583
587
124
165
548
735
469
211
428
638
122
561
990
670
800
188
595
87
108
689
295
446
559
479
658
383
269
543
329
51
449
448
755
477
383
97
669
919
30
403
855
340
573
38
990
642
195
370
228
233
314
88
422
912
767
40
350
554
65
113
73
510
140
720
344
987
879
369
245
101
879
179
604
535
63
523
433
482
838
705
218
202
584
715
842
362
658
341
728
769
127
415
953
875
246
238
788
485
215
521
834
388
423
218
911
63
942
538
565
870
192
677
570
571
350
583
240
78
188
467
364
348
392
38
361
48
770
947
332
343
45
412
451
391
566
348
888
302
217
745
215
732
328
316
734
482
580
270
740
968
653
673
220
357
22
210
57
129
380
521
536
960
475
43
327
592
560
342
99
565
724
669
237
732
342
128
639
651
946
768
362
747
551
173
342
253
622
353
420
827
97
350
932
958
407
100
228
610
583
905
963
840
180
174
345
185
351
94
226
606
73
317
488
482
21
290
768
528
721
869
585
221
16
64
258
547
789
70
777
582
648
593
546
296
898
727
537
424
990
835
570
317
404
862
613
935
274
929
969
638
955
193
546
151
221
479
358
261
74
128
266
103
543
61
721
62
652
548
977
694
922
842
310
183
110
466
202
122
531
831
132
292
736
995
644
647
145
994
409
69
301
132
76
678
800
540
39
573
92
884
346
177
663
593
593
930
830
600
84
695
38
871
168
308
579
827
885
856
791
761
700
794
932
652
338
715
801
688
327
895
878
153
230
691
828
666
806
957
500
319
39
602
295
580
71
403
569
645
144
384
74
939
674
212
324
140
508
12
471
801
674
936
457
751
680
480
739
473
446
447
894
965
235
743
862
185
646
808
805
30
699
169
386
58
654
416
328
248
643
160
925
812
325
111
289
205
587
660
569
581
260
231
62
11
721
478
142
530
949
129
428
37
716
244
34
966
884
327
382
129
323
551
299
559
916
446
893
305
829
412
565
444
630
33
609
792
988
470
14
524
871
115
727
96
182
629
748
380
679
602
261
678
847
428
386
326
133
905
311
825
895
523
325
356
202
557
503
923
590
324
757
715
458
514
793
138
62
998
353
277
268
239
907
788
884
86
684
933
927
415
172
220
643
57
640
846
644
590
222
664
851
514
372
925
454
271
259
369
90
547
470
327
934
782
479
458
810
487
749
519
86
653
654
775
854
269
14
865
999
74
525
509
124
341
643
978
364
213
731
56
614
186
126
405
451
230
329
994
779
91
925
632
649
182
474
811
604
366
800
591
901
801
962
128
630
578
791
682
200
835
458
576
825
309
427
716
832
636
636
730
361
109
245
921
359
269
633
250
722
157
190
427
766
640
143
892
832
634
703
869
444
544
511
230
732
391
41
591
479
520
507
727
729
283
743
354
214
770
558
220
984
80
823
321
430
113
580
185
970
108
170
824
132
363
32
890
551
513
850
291
984
889
358
984
41
158
819
702
22
276
147
516
824
562
204
973
127
548
555
396
162
27
574
677
318
123
991
416
510
280
13
534
308
125
146
123
62
941
941
549
379
594
663
901
349
399
352
993
958
419
687
360
887
22
452
535
337
839
773
595
50
255
555
192
799
590
717
553
248
695
660
28
866
732
230
637
472
632
889
823
789
130
534
174
40
585
48
860
313
211
157
415
625
587
253
389
875
556
753
478
327
587
576
136
932
524
250
857
838
959
244
54
818
750
376
602
695
942
923
316
449
18
853
338
766
529
730
541
282
940
60
165
13
721
830
547
441
957
375
758
625
676
860
302
448
781
964
844
632
555
472
635
848
271
233
829
428
659
378
252
175
867
758
571
228
409
793
20
125
479
376
671
434
533
217
244
801
967
703
102
871
169
672
643
226
699
187
369
666
709
243
582
507
677
669
867
124
489
256
730
656
464
950
661
466
585
552
929
781
408
788
192
429
846
37
18
919
772
440
697
559
430
221
724
638
651
176
522
293
501
933
510
670
150
162
49
859
107
45
603
308
737
418
960
960
965
40
929
473
756
419
290
167
645
684
201
267
23
320
582
127
688
321
731
66
921
152
528
636
873
159
189
435
991
678
340
319
153
794
230
803
640
238
108
197
705
198
646
638
10
242
746
716
935
926
40
652
395
790
301
121
986
473
148
46
423
530
736
412
769
333
276
69
689
431
411
515
828
435
973
138
132
113
524
161
606
32
468
678
374
144
713
879
101
241
102
574
603
342
895
484
860
482
235
910
20
267
462
472
294
163
882
169
629
340
981
139
402
102
127
814
88
81
972
969
661
340
22
434
275
750
57
181
14
164
710
520
167
646
659
707
654
484
747
529
760
141
134
607
310
97
643
729
109
790
935
892
27
404
637
434
381
417
252
666
277
914
138
755
772
357
277
943
81
307
391
937
468
85
412
289
192
49
983
675
514
854
954
948
168
76
155
795
538
266
42
199
132
68
80
331
771
163
303
481
249
339
562
856
878
145
59
993
53
658
152
395
122
765
462
609
602
180
944
270
751
192
976
220
675
81
668
459
641
776
102
484
760
726
568
719
467
788
702
357
909
242
127
791
988
684
209
332
16
393
77
106
557
91
102
459
845
207
900
867
573
882
572
308
764
423
941
340
227
206
32
654
531
56
30
57
600
748
417
296
887
27
756
934
874
140
172
287
59
714
193
160
61
439
241
598
225
766
99
601
234
779
657
791
428
115
228
813
526
445
139
65
572
881
923
221
332
239
368
959
148
774
601
401
539
827
882
989
626
782
26
907
329
11
621
128
705
783
295
330
719
159
723
163
473
185
871
919
406
981
257
302
315
370
598
879
982
196
673
471
418
997
411
345
965
211
319
176
546
833
344
361
225
217
204
96
532
960
444
344
511
907
861
533
192
347
767
736
971
912
271
623
17
671
223
60
866
289
333
712
867
591
782
144
355
762
896
506
965
200
170
598
549
986
595
851
457
360
98
471
124
797
801
485
880
707
404
293
350
68
569
776
323
566
601
548
213
284
454
799
381
95
248
90
722
590
198
762
774
763
618
535
560
869
89
358
746
704
867
64
566
566
809
525
506
137
71
988
840
569
944
548
687
786
541
761
603
125
301
289
458
984
261
675
830
874
703
53
569
735
70
635
889
526
162
629
418
615
854
221
705
497
534
704
353
143
966
15
759
773
91
533
468
828
825
318
66
740
156
372
557
542
584
873
372
384
820
667
828
186
80
643
119
708
492
138
469
779
181
685
324
927
69
324
765
404
614
370
198
526
374
900
865
537
638
74
306
824
736
643
455
436
817
439
154
995
41
683
416
717
31
833
88
822
883
819
648
601
616
683
860
849
752
797
138
486
874
984
912
815
325
461
73
358
168
494
573
211
295
231
399
326
183
637
410
151
793
301
810
994
756
450
953
446
418
724
952
798
487
803
781
667
641
710
861
221
725
523
255
25
964
770
232
106
582
467
391
457
450
190
823
424
527
308
276
487
261
868
75
97
695
546
406
451
368
125
882
217
584
557
33
38
984
343
802
65
636
878
850
958
151
256
391
864
375
177
294
948
46
39
237
443
34
898
781
583
598
632
401
826
391
12
843
498
715
462
245
352
230
710
580
687
394
320
570
215
524
372
661
666
542
366
888
796
938
662
138
759
632
42
761
69
960
577
774
314
830
127
378
730
55
220
521
744
274
751
587
677
337
646
476
909
919
699
633
207
791
994
933
303
950
788
891
639
231
491
492
371
939
796
746
839
117
543
72
639
242
691
599
431
581
862
747
904
299
631
524
705
179
585
792
147
679
740
973
837
701
922
597
595
113
790
670
77
580
754
483
690
914
792
238
194
207
456
606
902
478
310
560
305
770
570
98
435
491
552
99
856
974
494
368
329
17
31
557
949
52
159
665
860
822
553
565
51
481
761
861
437
40
805
81
302
188
906
529
396
198
380
508
453
870
790
189
828
62
974
202
564
292
358
363
682
414
408
398
403
76
108
172
109
55
651
918
963
553
743
257
715
445
617
282
64
436
204
316
525
706
869
186
152
281
965
412
513
115
306
788
251
268
473
980
588
398
265
953
922
579
934
277
336
634
956
942
502
287
59
129
917
651
873
709
641
481
677
467
601
495
206
498
527
226
305
801
450
754
249
778
748
612
973
282
518
799
614
924
172
443
578
110
782
135
429
671
360
115
399
63
781
539
546
621
307
393
578
913
406
218
579
139
106
878
329
747
832
808
220
811
64
155
483
396
682
347
626
334
488
212
45
985
264
368
825
128
248
483
957
541
547
593
17
977
628
33
59
332
327
974
711
521
393
369
797
52
434
332
255
291
84
827
284
185
424
38
685
827
692
836
568
208
442
583
205
804
593
382
933
220
964
542
281
444
90
304
627
349
19
273
117
304
987
462
50
301
808
777
264
10
107
103
191
639
220
991
710
501
25
243
967
680
481
368
232
692
789
154
686
999
869
780
100
636
225
341
55
433
275
283
742
137
98
636
716
73
186
610
613
403
162
177
196
949
170
203
125
671
535
752
442
122
539
876
365
397
861
56
194
818
118
367
844
428
81
646
158
74
616
411
352
757
298
753
128
840
96
813
917
115
940
357
132
328
571
18
596
655
539
314
864
187
941
998
478
258
189
857
825
41
620
644
680
568
123
35
765
196
979
966
592
291
543
448
706
928
105
833
734
715
612
471
543
137
145
159
422
405
336
691
908
304
351
334
886
64
944
742
17
222
425
140
726
144
14
973
394
960
218
643
589
719
787
266
276
18
918
327
91
76
925
742
820
402
337
541
68
838
398
533
152
877
329
571
766
705
883
319
524
402
701
402
456
325
961
161
645
770
224
856
982
317
705
961
105
567
633
202
812
137
263
165
782
755
612
986
563
90
127
17
629
900
733
983
589
247
176
57
813
595
373
377
596
61
567
935
680
866
252
682
114
411
264
382
548
264
576
843
660
179
507
937
440
761
228
820
251
910
323
105
668
110
297
84
430
597
301
454
92
823
321
295
622
577
228
485
714
750
492
928
926
360
765
253
632
210
494
51
448
918
780
444
780
452
598
872
948
125
602
696
144
16
122
797
767
561
168
699
445
332
704
849
857
600
23
909
69
757
150
877
464
472
381
53
466
622
789
17
983
888
466
280
46
160
188
103
32
48
142
659
292
584
634
982
106
353
295
547
741
659
287
518
488
380
724
301
940
273
354
778
199
931
847
913
721
327
584
422
194
906
714
83
780
345
24
373
46
436
969
435
284
884
817
663
760
56
847
78
38
931
531
10
137
253
733
409
491
212
20
828
504
868
731
665
49
181
188
450
920
658
822
242
139
996
211
897
644
450
843
994
58
300
499
45
727
694
859
46
277
207
17
303
217
792
880
859
143
493
480
21
255
982
566
666
267
193
837
94
568
189
473
875
876
110
151
190
243
143
122
757
328
648
945
953
305
869
549
775
133
499
256
164
478
667
133
627
76
60
636
128
998
526
960
897
232
315
416
596
579
864
895
759
696
43
903
972
380
980
359
551
565
828
338
129
474
211
610
124
176
625
101
791
75
41
263
740
335
122
869
937
659
403
211
957
969
853
19
750
690
553
507
345
548
296
132
381
602
985
651
941
632
620
773
754
334
699
253
369
994
515
860
63
136
832
112
152
437
749
413
745
927
878
569
774
172
591
114
970
800
911
778
367
913
526
545
928
154
141
372
802
63
84
79
284
411
512
270
867
601
470
905
561
800
911
926
90
859
756
309
376
886
603
500
854
359
565
574
205
112
115
815
609
690
890
579
153
917
179
226
365
211
288
81
725
692
620
102
848
386
597
434
10
885
857
140
840
746
835
196
808
330
683
132
909
115
560
841
813
470
685
243
982
467
269
891
652
597
727
280
258
718
626
893
213
71
949
679
46
982
792
318
838
997
349
116
819
285
374
180
139
680
614
752
706
56
885
315
906
260
873
241
164
333
309
947
199
136
180
80
807
316
211
115
991
923
692
40
479
644
404
838
350
144
282
558
333
322
24
865
313
269
242
386
408
123
689
420
440
895
308
237
710
180
510
526
966
508
14
117
198
464
376
920
785
140
785
29
461
319
897
57
240
686
697
297
338
613
239
901
376
588
257
993
386
164
415
904
266
516
627
14
136
69
37
520
765
372
95
689
56
680
245
940
250
56
526
829
56
213
258
450
186
159
113
983
383
659
890
508
867
290
559
620
242
125
124
995
559
210
434
835
771
336
262
287
383
795
809
913
276
632
762
437
61
400
269
591
366
768
352
428
559
948
308
125
425
716
938
662
379
24
509
279
680
678
405
572
54
881
193
872
261
725
589
750
727
417
11
941
847
242
982
253
463
832
168
850
794
104
220
748
436
789
201
195
906
77
535
684
64
728
686
338
171
118
838
27
674
878
730
560
308
521
677
303
969
328
73
970
429
700
270
252
236
38
259
57
324
921
856
96
994
342
267
301
351
791
830
729
665
218
450
290
596
50
996
275
669
898
633
81
894
855
131
709
815
857
357
217
246
263
426
335
423
296
444
128
628
484
248
288
143
375
69
339
656
100
299
81
604
924
415
452
865
402
614
943
897
338
677
579
451
883
980
687
498
733
680
288
737
315
575
65
760
296
51
368
43
631
341
199
808
326
364
157
795
73
834
47
878
970
642
75
21
185
779
49
277
233
233
908
57
539
603
635
422
536
792
724
551
380
156
300
997
26
39
964
549
139
837
83
178
405
499
781
685
433
948
208
333
166
746
652
840
816
941
614
371
562
658
833
413
437
775
930
637
863
986
433
539
352
294
673
375
389
871
713
140
422
210
383
470
966
298
127
973
933
434
211
252
762
911
852
463
552
565
495
666
858
133
515
681
19
649
184
652
703
243
489
402
366
834
183
539
413
558
134
751
558
985
740
853
201
401
950
94
764
500
637
416
129
204
112
359
118
397
389
285
579
37
261
603
266
297
944
572
616
467
778
25
956
35
890
219
619
475
289
126
770
518
938
878
571
186
56
602
22
839
192
321
160
197
123
742
544
67
74
672
678
975
490
230
385
193
87
789
487
913
791
212
797
773
107
149
520
474
966
234
252
260
589
806
188
55
964
296
346
477
580
843
772
658
804
893
498
384
658
276
752
971
525
270
219
563
109
947
260
932
82
867
119
986
724
701
118
861
615
263
577
161
890
985
503
366
484
542
828
151
798
593
78
207
492
944
562
132
351
91
924
336
419
124
722
804
328
547
261
752
112
839
97
862
725
721
916
952
990
245
562
450
46
326
125
606
734
284
59
852
739
391
787
758
288
795
27
270
149
148
895
175
847
205
327
432
438
249
699
747
287
280
475
272
237
924
387
135
121
40
624
909
40
240
752
201
579
540
558
445
605
687
13
417
136
527
576
226
386
993
857
912
456
945
445
929
40
241
447
50
772
918
807
135
125
833
383
456
910
129
531
612
192
230
301
423
680
350
199
896
743
537
356
54
594
304
753
370
267
354
228
175
807
259
857
708
744
407
145
540
195
791
887
72
622
986
274
344
181
768
76
892
380
902
677
324
423
708
32
225
387
660
106
450
199
500
668
546
569
756
361
810
806
844
872
177
90
680
966
321
922
442
11
354
73
387
173
244
381
255
237
597
366
847
653
394
264
444
305
635
222
958
956
114
50
940
853
262
430
490
566
439
163
225
899
898
853
85
811
336
110
395
975
585
975
37
725
669
263
356
211
604
493
855
350
877
183
61
733
620
416
278
906
186
197
714
380
12
955
651
704
39
794
37
403
354
357
186
180
674
794
694
788
287
233
26
283
840
487
912
833
289
219
354
823
753
165
415
516
873
609
276
890
318
497
783
334
628
334
641
110
114
76
565
960
239
712
269
457
359
605
207
787
703
189
191
827
478
469
678
516
115
475
88
433
650
925
862
876
335
219
332
917
979
699
627
246
389
733
844
586
230
544
957
358
368
674
875
921
165
314
545
790
940
553
14
985
302
557
130
156
61
848
255
546
571
279
172
362
132
956
222
818
449
495
581
477
40
747
162
66
591
151
244
949
462
399
802
181
932
128
839
317
663
812
337
422
198
769
609
904
250
470
689
528
636
170
389
979
295
507
994
268
442
362
478
418
256
628
991
786
961
429
901
46
847
844
377
937
688
840
920
275
372
271
224
514
530
754
280
963
960
482
894
83
728
468
460
953
990
423
52
275
936
295
21
692
95
434
216
518
917
148
151
768
73
631
606
405
725
673
996
72
194
313
588
946
596
108
744
54
910
871
642
695
985
995
608
732
339
623
660
434
580
832
475
339
74
38
753
85
71
985
891
551
91
405
245
360
495
409
714
534
995
112
558
11
235
321
346
413
920
525
599
105
106
720
285
178
390
60
441
43
497
258
941
428
380
91
683
163
867
977
377
19
443
587
45
837
51
753
63
459
840
196
396
385
499
753
33
895
34
587
957
236
444
896
941
550
54
993
914
228
771
433
151
182
292
97
72
753
500
39
970
836
33
918
909
393
766
683
574
143
289
784
981
455
269
279
225
965
626
805
29
800
685
654
822
749
194
48
30
671
648
184
623
421
575
914
690
184
52
493
944
419
626
316
819
837
621
47
276
672
849
629
906
36
920
166
887
983
86
987
291
274
165
352
963
423
177
689
831
546
976
342
533
553
582
48
159
78
901
319
731
646
610
470
183
414
438
56
353
221
544
106
543
570
752
271
68
79
329
777
250
985
920
378
657
581
39
352
864
292
639
650
925
94
435
382
123
60
702
280
310
730
783
785
544
230
807
726
876
982
848
606
994
853
564
725
541
730
963
601
398
541
926
213
309
287
754
938
676
178
535
635
453
327
550
710
182
336
643
747
63
354
54
819
114
263
118
629
208
725
244
96
665
876
782
336
952
109
605
910
613
494
808
92
874
772
81
731
793
144
262
695
499
842
91
470
801
353
859
311
39
510
762
860
146
128
919
37
937
573
118
575
419
353
187
43
811
500
204
922
240
826
648
255
35
684
682
926
934
348
601
121
444
135
422
754
511
858
869
653
297
205
772
300
232
775
181
306
664
540
146
959
385
258
204
876
828
592
255
387
906
614
393
912
701
56
42
15
167
363
18
355
511
73
903
298
586
833
305
279
745
244
300
109
792
949
372
545
475
743
634
395
345
644
894
318
795
772
782
920
255
850
109
544
654
623
227
574
187
283
619
172
652
702
359
578
342
185
905
399
549
656
256
494
221
118
495
578
137
921
523
203
589
44
149
139
291
716
329
730
495
84
606
152
171
275
290
728
169
596
280
421
158
572
152
886
248
929
306
367
912
171
567
686
30
271
770
674
50
235
352
618
387
277
205
55
890
432
871
614
65
256
806
543
236
321
386
161
658
336
982
166
841
451
461
736
599
289
64
87
536
394
855
428
755
458
382
606
286
339
29
721
680
472
858
639
164
787
728
346
103
129
728
602
508
370
677
963
899
25
898
249
980
489
646
88
510
544
537
990
206
997
287
706
822
584
484
901
727
930
370
519
258
932
75
337
740
311
345
361
559
654
956
517
804
544
442
488
80
846
673
190
527
354
626
253
824
838
831
880
497
867
511
534
297
779
756
97
395
219
466
875
493
236
856
96
876
456
245
446
250
227
753
382
489
726
224
221
317
474
341
718
903
308
414
871
776
298
833
549
522
787
714
772
125
30
187
208
525
443
15
649
370
403
108
149
484
689
994
935
79
223
423
863
85
97
860
711
783
199
86
797
794
15
941
492
363
985
902
552
865
935
970
374
396
773
394
310
808
761
318
881
404
647
427
70
361
634
947
931
592
102
658
455
789
422
500
489
620
211
194
575
800
762
250
75
874
290
727
798
823
815
280
560
113
385
648
532
552
974
186
896
899
248
673
215
817
48
311
782
612
147
121
43
302
831
175
98
259
412
901
158
585
57
87
572
367
161
998
727
531
88
579
945
988
577
371
212
800
663
120
988
250
338
818
359
537
927
951
192
601
646
141
256
882
670
514
84
631
813
951
840
609
58
335
972
459
180
399
999
704
795
12
92
245
893
787
635
371
480
784
446
827
709
51
938
108
417
187
852
465
726
413
942
335
859
140
642
860
222
375
959
951
516
855
373
614
268
773
337
498
530
966
838
904
558
402
418
487
394
424
999
686
535
880
254
554
849
605
70
67
87
577
386
352
317
635
153
916
263
832
773
309
777
183
371
543
889
960
519
408
975
785
946
144
720
964
857
329
413
843
169
437
785
786
501
638
444
684
643
608
436
307
958
970
833
177
361
262
779
983
689
312
962
724
426
505
708
883
814
190
556
390
523
769
643
287
911
184
82
353
48
984
302
95
341
536
990
868
280
200
126
746
594
746
365
815
986
794
975
134
260
660
570
544
469
804
318
804
34
903
545
191
823
635
801
259
96
128
689
461
330
664
840
676
634
11
104
616
279
762
410
716
280
983
334
294
476
983
744
298
542
292
343
215
433
919
756
764
907
372
349
862
25
465
834
809
612
541
301
104
959
637
409
721
196
620
702
832
274
412
980
536
940
933
604
250
447
236
911
233
178
901
214
910
614
810
855
589
890
449
532
102
661
998
215
520
431
801
98
857
640
28
366
565
852
232
684
789
665
46
944
608
486
150
637
511
393
939
133
285
280
635
584
573
201
970
236
262
502
881
275
290
193
648
159
172
187
887
381
584
423
830
674
324
235
648
68
900
634
296
26
787
788
708
212
991
981
826
740
574
329
459
143
499
735
895
373
250
246
602
500
323
671
331
611
679
830
193
272
746
423
554
889
206
941
831
552
854
923
688
884
752
910
843
712
996
177
367
992
208
232
383
386
958
144
901
304
321
476
817
168
286
987
390
596
344
253
383
671
749
264
565
264
870
205
238
335
249
483
105
72
49
888
242
803
711
230
454
601
293
785
126
721
256
815
478
456
913
106
85
260
628
693
303
860
417
491
367
385
880
933
343
437
497
592
229
225
78
198
637
654
161
901
584
183
458
816
867
956
71
250
180
743
914
291
187
440
322
369
254
144
284
967
732
331
28
41
511
297
918
565
102
435
699
169
516
507
126
975
686
219
615
471
783
169
760
704
472
933
371
883
938
276
575
166
357
596
365
49
425
826
297
760
813
327
844
860
331
82
920
275
93
689
772
701
161
583
90
59
522
808
879
675
509
565
131
801
40
963
208
707
428
249
924
148
47
711
487
318
985
772
930
340
791
329
575
864
270
629
889
809
610
635
382
347
648
211
265
269
57
441
629
999
502
927
715
131
157
10
480
723
707
427
763
77
170
973
556
100
925
387
858
109
548
281
235
481
804
783
836
436
787
389
599
579
516
815
24
243
145
292
119
177
636
923
599
46
441
292
719
549
339
331
438
437
823
750
431
145
170
516
45
481
983
516
786
258
366
653
52
959
316
462
278
680
915
152
818
430
658
801
716
514
107
885
242
998
367
319
796
475
391
425
350
280
430
679
853
71
309
307
936
506
740
408
470
673
221
58
955
223
546
755
118
967
143
496
812
47
536
149
554
491
780
91
75
559
794
294
41
457
333
284
751
483
752
421
909
616
80
771
102
79
519
354
174
386
790
291
271
22
526
618
941
929
486
980
171
317
329
673
359
909
433
739
322
306
359
759
905
748
724
78
632
835
867
360
504
220
697
96
698
140
937
558
547
460
120
756
768
936
182
830
543
479
582
941
177
656
246
527
936
958
763
766
315
772
303
132
990
970
353
313
201
50
398
168
959
844
536
377
19
497
313
957
218
182
151
444
514
501
975
615
627
953
410
55
481
20
573
666
979
814
775
834
698
91
876
528
408
815
396
405
666
973
908
978
21
810
912
727
735
682
252
642
834
239
630
974
109
57
853
487
756
725
968
411
746
891
468
525
821
37
215
76
596
132
287
898
251
426
784
992
286
219
183
14
286
879
741
240
660
277
218
744
455
297
624
654
847
319
454
192
198
129
15
607
254
809
494
139
597
106
556
836
317
850
923
525
218
26
372
120
971
825
713
229
417
222
769
302
937
986
849
913
166
142
660
795
506
786
807
720
337
548
716
932
712
940
991
558
177
632
495
580
127
855
149
425
813
726
544
809
941
847
837
71
781
251
468
754
743
470
478
312
96
377
733
74
31
364
579
743
52
159
371
726
228
779
348
54
84
619
439
369
545
695
236
324
688
593
331
981
579
344
149
450
754
181
760
393
776
745
832
168
600
722
822
480
758
714
874
506
610
886
193
206
14
291
464
735
896
694
631
733
307
472
61
670
284
577
986
824
681
241
75
919
762
175
338
76
870
942
599
65
615
491
363
107
155
581
450
503
992
306
894
992
917
213
868
935
480
118
488
103
479
720
298
569
848
484
362
295
769
599
896
634
974
634
717
636
413
790
347
62
383
101
244
906
788
683
620
953
161
381
145
899
691
470
172
148
935
980
672
345
136
989
565
774
835
467
193
11
783
813
320
556
647
906
505
592
892
574
36
565
177
355
771
796
646
915
609
193
937
861
849
880
250
922
554
716
112
28
680
736
483
319
116
972
761
758
987
739
773
72
783
633
724
833
358
69
342
663
849
105
133
869
309
583
442
205
353
935
541
927
144
657
320
784
176
504
751
484
934
600
216
189
32
187
292
275
190
899
800
819
375
23
269
629
617
640
815
180
720
396
791
139
838
456
876
334
64
419
632
776
783
608
308
298
905
122
382
25
795
806
153
14
962
536
932
975
650
674
402
894
874
491
499
180
454
789
116
792
561
333
583
742
756
945
934
676
99
562
779
846
158
789
538
467
808
908
367
945
863
432
969
560
562
351
616
24
234
443
323
227
770
167
493
395
999
22
894
215
651
881
604
157
853
73
445
204
49
128
980
267
682
905
153
419
987
428
646
619
45
715
761
413
855
494
654
770
834
923
68
484
845
380
978
669
140
45
959
608
682
306
651
65
546
950
952
720
952
849
434
182
553
763
517
821
366
463
191
782
837
244
990
127
500
382
995
13
316
174
525
804
523
600
863
224
238
405
131
460
557
443
620
643
322
488
217
201
159
177
361
676
955
550
573
691
968
531
343
830
291
475
271
481
931
541
959
650
761
160
474
187
724
947
704
208
131
228
669
879
307
401
624
68
746
301
705
577
960
145
281
483
652
292
441
562
401
497
578
731
999
619
570
914
627
185
651
120
531
482
368
815
723
13
759
801
993
735
252
93
843
27
177
261
299
646
41
504
250
886
73
297
410
666
197
528
688
298
294
281
439
889
50
592
661
32
510
74
839
689
420
102
679
229
969
410
187
374
127
75
928
465
889
206
407
901
137
153
643
331
307
158
585
319
588
805
458
990
712
259
150
208
518
867
28
417
805
540
242
102
870
823
97
141
565
146
599
682
413
340
705
188
398
896
872
815
976
638
892
724
195
311
267
355
70
337
957
220
32
48
568
509
342
932
712
969
719
192
546
698
758
492
594
99
90
94
46
28
413
324
81
78
953
250
639
958
987
105
674
222
353
43
807
180
650
745
236
771
720
369
428
418
585
108
976
422
617
820
149
507
848
397
252
412
863
60
797
400
134
956
847
33
265
818
634
707
844
259
267
335
133
841
603
918
815
398
222
735
41
506
123
462
549
48
439
186
200
854
589
561
31
10
431
318
259
46
46
466
755
773
420
778
787
503
880
266
29
644
856
90
489
952
794
850
23
640
818
417
732
724
342
993
146
108
796
25
622
749
235
299
837
240
132
679
306
913
474
390
173
163
153
639
108
986
282
163
562
615
964
609
213
380
443
907
389
805
767
569
163
285
873
246
708
338
324
555
264
719
374
597
349
427
968
560
336
403
870
630
288
972
444
329
225
285
927
358
871
389
353
327
980
763
776
476
88
977
519
943
710
205
91
204
607
853
841
453
901
15
713
261
789
683
934
122
321
384
599
429
735
367
485
418
852
606
317
267
197
863
622
27
846
574
19
928
589
376
864
320
578
875
477
804
831
48
914
253
297
933
55
578
263
352
255
546
135
610
427
441
157
935
734
695
814
863
799
63
723
68
61
764
483
779
188
782
887
44
459
936
163
714
643
322
950
946
221
36
278
924
19
506
989
757
856
911
299
406
111
137
596
536
377
544
436
628
932
568
972
598
51
713
244
915
106
698
13
223
352
630
55
763
289
423
985
303
933
808
278
239
769
821
175
571
807
680
308
516
372
402
256
274
817
749
397
516
379
747
973
746
871
333
524
522
924
377
125
463
509
635
51
949
57
348
554
305
530
632
815
443
312
886
114
878
266
14
527
121
839
204
644
478
329
619
824
802
52
365
566
431
755
392
583
807
484
444
321
263
182
711
635
629
352
716
120
591
138
242
14
62
425
16
968
514
19
594
720
630
882
798
397
905
389
363
299
725
744
508
510
623
815
901
812
492
11
233
256
615
328
569
903
397
96
859
888
456
866
18
267
119
699
629
339
739
76
881
954
138
129
906
110
182
646
996
813
734
955
997
58
559
707
961
249
297
570
787
375
248
548
692
889
951
275
477
974
438
231
964
585
637
124
353
204
77
36
622
578
600
954
204
761
39
457
726
441
253
26
661
37
839
188
402
133
236
369
18
942
408
82
770
294
18
272
918
903
374
674
321
18
765
515
440
248
676
138
963
566
593
914
877
463
734
876
684
273
684
314
438
752
286
666
290
606
337
628
707
508
937
802
978
228
129
23
358
922
565
895
561
175
720
618
58
984
363
314
90
753
684
86
365
59
202
736
744
269
439
892
309
822
856
712
178
375
446
348
456
223
252
987
792
163
459
338
887
686
192
424
287
192
428
141
31
904
964
610
524
414
977
413
788
17
427
341
189
141
867
302
934
748
736
92
911
743
119
67
101
369
183
57
80
400
348
76
778
262
469
540
589
654
166
68
82
54
360
124
954
758
426
289
979
957
34
934
658
226
895
140
731
56
57
332
146
984
759
913
51
46
360
472
277
197
627
157
619
702
242
232
577
981
129
33
477
277
642
696
616
956
834
704
715
277
875
128
728
359
883
681
342
618
434
284
764
472
728
234
443
432
128
264
800
630
552
344
588
847
214
359
210
491
265
58
625
821
283
387
377
324
539
480
68
16
856
188
32
765
313
144
417
314
66
309
417
889
178
630
334
764
469
449
650
479
932
975
34
462
497
115
733
62
775
509
19
201
330
842
487
700
286
998
539
55
973
207
367
350
784
256
506
343
330
59
283
204
255
456
873
710
41
302
541
726
341
334
71
939
143
407
187
103
831
39
372
706
921
398
751
843
854
355
154
695
513
426
517
726
105
148
202
66
149
28
987
652
404
969
969
753
40
420
529
390
947
886
246
34
919
235
211
941
888
569
59
746
788
330
858
426
774
490
492
931
494
494
88
878
758
710
922
477
635
283
828
934
621
492
608
340
356
635
776
448
280
513
715
773
105
126
156
841
449
471
758
47
434
324
469
804
839
866
645
664
565
833
475
353
43
147
641
708
82
219
872
158
333
371
512
870
767
673
845
941
46
69
877
740
197
899
960
132
840
660
993
640
197
751
782
767
303
71
679
206
819
757
55
299
658
143
394
512
24
231
387
454
784
649
488
345
627
75
177
77
895
998
420
505
736
530
505
844
597
697
900
879
324
29
841
110
648
309
629
955
744
816
143
909
898
751
485
803
54
811
612
771
348
317
178
658
267
381
13
935
154
778
706
581
535
118
232
677
323
351
328
26
257
148
672
371
419
699
764
172
148
402
967
785
26
143
499
542
731
727
541
451
616
588
470
739
820
229
563
69
779
117
517
792
747
998
272
371
858
660
290
628
643
647
287
142
325
872
322
20
289
704
757
859
268
223
216
740
10
662
987
26
55
306
924
366
54
620
610
969
505
721
235
626
582
142
974
257
860
563
510
291
600
602
580
73
638
289
392
92
422
215
621
222
690
350
225
662
359
726
324
120
705
647
447
695
259
147
509
913
447
514
365
589
714
518
279
54
25
90
661
273
942
749
399
958
152
91
152
323
550
815
61
163
388
257
179
87
727
470
911
516
260
52
785
566
466
471
275
196
582
169
428
942
932
269
105
28
968
529
837
795
348
803
283
637
550
226
442
470
830
927
449
573
871
859
582
949
776
752
838
871
541
933
67
823
269
845
996
620
729
402
311
878
737
727
271
867
922
808
210
456
747
855
986
111
386
720
742
686
826
771
760
557
545
910
476
620
538
953
607
158
421
141
111
845
428
568
899
892
493
821
484
245
540
709
559
903
215
676
840
484
621
404
954
404
504
722
37
960
273
165
792
737
279
507
762
91
750
30
257
46
344
540
788
492
409
639
401
428
449
920
305
863
409
272
664
180
236
865
638
575
363
693
500
630
202
416
836
329
450
253
414
12
475
226
89
963
465
74
74
686
576
700
306
976
701
941
948
168
665
419
152
788
80
664
405
495
509
240
95
592
222
670
951
604
331
790
579
144
379
309
118
907
152
120
929
284
404
257
800
484
667
354
735
126
568
61
980
739
693
983
265
76
458
441
366
182
751
373
480
218
232
936
777
484
615
751
810
697
218
772
505
896
834
472
680
537
802
684
375
908
75
90
738
865
377
818
141
112
64
215
602
924
230
201
861
789
177
496
924
235
809
482
169
294
922
962
556
681
411
959
680
987
662
475
283
93
733
525
741
583
219
292
544
479
181
754
113
725
525
147
600
924
428
364
631
468
563
251
360
499
803
506
730
208
554
896
855
616
476
448
804
920
494
743
905
39
484
947
967
512
636
585
916
584
637
295
971
933
418
774
992
875
497
506
345
806
202
219
69
763
825
533
464
755
17
756
851
30
748
889
97
663
366
58
647
276
737
64
479
855
516
841
540
406
897
440
826
53
883
834
176
103
236
629
312
451
606
891
974
872
154
876
798
682
98
216
339
412
867
312
247
973
292
691
956
517
457
471
818
263
970
563
490
543
502
77
593
563
910
508
841
182
707
341
132
641
700
602
409
723
59
932
453
648
58
921
830
715
378
428
63
751
295
588
717
308
381
413
457
513
519
519
924
918
528
678
371
179
937
860
966
264
225
413
732
649
68
114
511
535
583
252
917
523
639
29
363
377
648
413
147
596
886
93
364
374
493
410
255
470
642
413
46
30
228
832
863
399
923
356
720
403
773
112
952
582
625
563
724
539
367
359
242
952
137
806
652
464
715
739
123
134
43
494
592
615
195
203
631
854
13
839
520
967
45
520
489
157
186
94
574
588
924
373
714
790
407
357
987
920
668
954
479
717
459
124
107
88
475
819
48
383
577
630
134
527
704
758
836
343
483
91
325
114
580
650
519
522
169
33
565
863
208
294
771
885
316
221
702
166
348
731
720
761
142
762
328
633
751
377
666
477
839
405
165
970
525
989
123
762
695
232
638
515
645
734
532
143
126
634
918
501
972
707
566
594
976
527
783
369
56
77
909
69
258
582
140
25
116
924
614
55
737
68
996
535
380
522
621
555
317
788
656
213
929
193
846
692
723
966
347
571
949
684
222
134
547
576
684
307
695
58
589
959
183
356
69
289
416
922
387
636
636
454
47
421
718
990
453
643
494
606
943
404
59
102
726
665
897
512
265
544
283
270
323
614
854
23
743
348
718
596
422
968
529
766
339
122
823
771
871
884
594
740
917
851
949
427
661
707
750
94
487
308
411
550
706
595
547
469
712
471
24
136
18
319
873
495
105
766
694
550
186
886
257
439
501
620
645
801
721
932
463
327
492
404
881
89
671
231
929
513
683
526
371
199
515
787
566
67
496
262
159
917
949
476
154
850
103
196
678
343
10
515
107
100
805
97
980
13
169
19
438
434
868
197
461
521
17
290
171
107
28
256
656
715
853
840
493
373
876
150
723
388
105
263
231
43
672
941
936
310
841
771
372
642
162
190
974
775
394
663
147
580
238
405
123
670
405
112
841
962
841
998
466
371
937
536
709
982
422
316
130
137
910
139
707
150
562
656
393
371
794
574
696
436
864
540
604
541
278
111
787
11
586
169
192
840
436
576
905
58
120
921
545
139
72
340
138
490
54
350
461
445
497
97
197
246
960
517
141
948
265
105
169
403
244
869
998
340
81
498
553
473
187
289
90
762
489
419
124
999
35
127
763
237
159
103
232
646
840
860
311
870
424
180
189
392
796
647
732
465
356
66
907
952
404
932
852
243
764
897
97
379
268
416
534
43
399
422
177
394
46
203
661
644
44
65
239
73
73
351
771
726
133
186
683
342
646
745
806
799
972
892
799
433
916
733
321
498
908
966
890
785
871
887
290
917
202
586
754
332
839
772
382
691
719
84
642
865
233
254
792
775
796
701
72
552
585
790
307
971
598
833
233
507
347
802
651
325
361
261
917
220
663
150
453
833
763
706
579
362
808
863
223
950
89
469
583
881
184
546
990
49
241
173
730
472
509
183
975
636
426
576
548
66
809
407
412
767
744
640
662
69
864
396
286
849
95
123
741
938
523
46
671
985
937
487
559
133
554
208
640
172
170
980
628
737
250
68
744
213
717
695
975
563
11
65
659
889
137
497
800
765
297
636
710
16
954
463
749
663
941
631
789
965
67
252
915
148
98
227
292
656
292
102
962
401
610
169
769
622
610
173
464
421
517
642
702
314
185
654
570
915
99
174
580
27
832
191
619
138
185
785
739
298
795
904
724
509
248
442
663
434
461
107
253
456
186
147
657
45
780
796
537
336
479
342
695
962
113
896
383
96
173
94
223
604
681
578
169
943
782
811
933
667
939
665
59
484
186
720
728
347
809
499
601
387
743
239
340
840
688
566
933
945
713
63
834
415
986
948
752
978
994
662
891
224
761
252
41
756
29
714
498
763
979
683
205
584
801
952
466
679
108
464
240
199
456
948
571
343
204
98
945
102
988
325
334
199
209
150
495
263
854
326
515
74
242
449
521
937
931
173
118
899
997
85
913
416
955
528
716
810
750
325
579
563
965
924
778
504
345
577
934
651
376
745
767
722
88
639
284
923
587
945
31
129
932
72
155
286
107
49
391
848
390
326
910
30
233
302
674
585
472
306
928
849
854
539
540
686
982
226
362
333
91
631
913
249
375
52
359
14
356
349
564
354
756
280
13
357
221
90
766
835
154
797
94
985
990
275
989
984
812
439
110
770
702
801
512
440
58
106
205
682
417
787
405
448
15
892
140
848
960
563
494
854
399
530
133
468
792
23
420
839
676
913
471
787
700
758
862
866
963
578
836
267
954
582
846
65
779
513
593
258
480
865
383
140
608
624
712
107
572
756
543
642
242
317
375
909
596
438
537
630
705
674
70
332
332
424
749
399
274
886
780
180
30
536
119
105
227
664
450
981
520
664
642
894
969
742
280
244
326
425
959
878
949
501
515
684
623
378
735
292
552
459
840
341
240
744
332
851
506
205
219
159
979
74
187
865
14
926
229
308
600
990
403
634
895
338
266
218
822
99
394
224
25
709
329
434
774
383
131
642
933
622
204
975
957
435
620
622
683
354
96
810
401
602
292
487
794
695
249
387
300
852
338
192
783
142
982
515
327
687
85
745
771
295
473
905
978
332
162
758
601
765
799
394
573
971
242
835
325
209
400
105
568
119
647
30
275
314
931
648
191
512
445
438
394
449
956
483
31
298
137
964
920
707
965
259
831
598
995
774
553
762
770
22
528
883
89
835
677
610
161
740
81
665
905
197
578
595
734
887
577
291
576
96
351
20
690
220
109
832
125
897
158
145
30
774
696
603
922
512
811
106
29
971
272
820
652
234
297
671
241
652
87
502
418
879
530
665
647
497
321
713
937
644
498
850
668
439
964
685
393
75
722
979
364
473
727
490
344
191
141
276
150
699
517
386
887
656
194
687
674
654
855
814
841
420
507
41
214
796
772
923
814
505
137
473
164
800
644
31
928
467
965
758
695
848
124
674
536
781
970
938
813
545
503
23
56
640
364
229
18
175
365
348
907
264
182
474
235
954
70
281
370
841
41
832
669
982
413
876
719
725
963
558
364
868
237
273
601
810
865
79
830
881
664
322
855
558
426
873
30
615
125
434
940
377
792
914
40
798
428
329
512
796
426
217
628
411
609
815
771
15
155
403
178
252
261
549
347
782
590
691
292
850
564
353
159
709
951
71
494
76
263
789
82
217
893
613
610
994
45
470
607
118
31
762
612
732
128
719
569
756
82
344
545
882
794
625
893
938
861
389
968
618
597
522
865
24
691
946
140
256
505
942
883
751
742
275
11
309
600
759
888
838
777
11
418
64
161
534
151
140
664
512
773
619
357
72
746
366
474
872
94
930
131
876
578
95
683
189
352
946
15
318
135
209
752
423
189
67
395
944
431
443
312
661
198
179
108
636
719
66
242
474
371
342
729
118
572
114
482
844
493
853
822
155
696
850
983
734
349
138
454
598
772
641
46
280
394
737
924
505
991
22
906
609
630
465
956
793
631
292
503
434
941
519
289
118
101
822
593
864
678
684
177
741
678
454
966
479
734
942
581
496
259
215
532
739
952
946
389
718
933
24
170
699
835
336
154
721
585
542
346
451
117
137
778
515
676
891
883
285
706
220
216
464
281
361
209
739
653
285
490
523
468
42
682
388
35
568
541
528
439
537
321
285
126
737
458
166
751
890
526
82
531
340
922
666
558
253
651
924
231
517
49
572
292
818
362
753
137
121
808
954
108
223
103
565
697
547
598
422
220
895
249
86
758
273
256
592
542
265
233
500
816
24
894
347
450
352
277
423
263
379
974
212
784
359
193
564
984
246
206
548
329
841
798
46
356
460
457
929
442
784
383
130
465
373
707
27
994
908
186
494
495
538
84
439
349
69
966
362
150
271
362
451
73
116
721
370
686
680
551
617
822
762
771
679
855
312
615
217
90
715
750
729
456
739
850
366
514
462
271
137
585
914
588
64
375
438
208
918
73
158
539
134
703
267
21
117
915
408
657
529
103
695
167
532
649
546
481
481
435
126
847
449
236
362
582
474
355
851
385
653
672
582
723
140
548
423
966
235
436
474
347
253
575
418
829
303
792
258
638
617
139
200
570
339
723
744
342
80
139
784
556
703
877
893
260
937
855
898
875
611
646
836
264
443
412
823
367
542
372
958
288
156
213
279
608
681
23
546
699
685
478
485
998
710
415
543
116
82
312
705
730
23
147
558
503
12
676
80
997
985
566
111
804
838
866
230
722
261
296
61
702
548
384
434
107
373
426
809
287
288
728
773
398
418
977
509
308
379
696
640
799
984
156
730
72
862
953
736
176
307
729
122
699
162
834
361
287
404
501
48
284
298
566
537
348
21
148
239
460
354
415
58
701
651
991
397
118
202
517
586
417
882
237
189
404
160
833
903
261
73
444
348
81
976
907
593
880
640
329
191
680
988
377
733
795
170
569
990
232
145
823
680
976
627
318
391
826
25
594
343
682
305
573
535
572
166
704
470
949
378
184
932
200
728
933
563
654
603
157
470
481
904
487
806
126
259
981
380
698
66
161
267
633
141
779
439
897
616
556
635
198
936
19
428
846
735
914
95
70
575
528
713
577
66
62
126
208
280
361
471
956
246
195
410
675
535
821
699
685
596
443
927
233
884
732
99
233
771
972
27
466
801
975
503
11
98
756
77
148
284
244
207
450
849
973
507
18
433
770
676
889
412
123
390
218
528
341
796
761
140
838
974
302
583
230
850
711
474
547
159
164
248
626
949
714
684
886
214
263
921
730
677
306
119
335
650
922
794
112
795
562
780
72
342
757
233
461
667
334
208
963
797
881
141
306
984
331
48
395
672
29
721
178
311
877
133
967
376
355
402
165
301
315
198
942
903
534
555
499
804
951
673
81
129
275
278
162
144
962
133
434
596
935
678
280
651
489
87
159
866
872
607
365
999
640
587
998
902
141
640
17
262
971
32
960
557
745
128
487
515
381
880
403
794
847
755
975
867
602
367
98
603
180
510
222
383
367
937
264
761
567
751
138
587
919
270
224
473
991
205
622
795
225
673
767
85
279
773
487
74
69
672
452
439
889
121
778
116
832
815
50
742
97
948
472
267
850
749
125
173
544
611
313
533
348
759
341
804
365
506
232
565
353
230
809
121
108
873
580
476
939
30
548
72
255
305
925
798
482
825
218
387
728
779
902
691
958
98
756
262
30
188
933
34
236
388
286
961
350
573
484
28
491
142
81
833
959
420
301
123
60
49
645
362
914
426
641
671
738
892
290
938
784
767
636
378
125
693
296
740
806
773
493
64
195
805
662
417
765
803
532
620
667
170
476
730
432
553
128
460
598
228
966
595
610
218
18
987
264
957
342
653
382
345
494
278
83
925
252
528
428
781
58
422
844
866
453
114
812
518
958
64
132
733
972
965
994
657
20
125
228
60
239
350
310
785
972
461
485
134
639
333
582
422
113
300
157
305
798
670
131
391
558
585
179
520
886
470
604
626
945
161
315
384
423
499
601
577
850
470
248
414
35
653
83
280
494
388
128
669
861
524
457
698
55
216
823
256
476
922
101
180
850
769
127
581
759
32
585
163
507
392
275
110
442
310
893
966
217
842
540
595
12
448
493
54
938
126
667
589
873
981
835
900
919
179
554
659
488
103
380
333
207
688
153
175
359
888
453
99
942
321
434
307
811
675
192
74
259
146
916
123
23
662
709
870
666
33
359
176
772
633
398
464
878
133
488
858
322
873
606
329
553
554
208
786
835
785
630
228
898
964
952
187
95
303
850
79
850
11
781
622
479
974
800
94
835
542
542
288
33
535
786
778
39
964
979
684
212
516
438
760
325
249
709
822
823
234
412
514
884
709
51
174
778
797
143
867
181
567
276
552
551
423
829
910
682
753
362
980
421
778
590
131
847
393
803
509
502
139
71
332
157
643
937
709
709
928
54
324
158
899
320
228
61
40
833
660
796
804
682
285
851
249
235
630
355
729
904
352
995
351
335
927
144
430
628
705
478
185
528
194
57
111
705
991
351
633
115
556
506
217
956
928
865
42
592
941
62
66
522
703
204
45
994
771
328
955
323
800
199
900
233
266
286
105
122
115
21
297
457
192
888
637
842
499
179
521
105
634
411
637
530
204
171
898
834
810
91
102
715
714
880
629
346
861
187
135
809
62
890
110
111
966
559
896
265
964
779
324
60
215
665
92
496
829
15
308
564
464
51
148
193
144
698
682
806
868
929
520
133
441
145
593
769
318
151
204
211
269
725
82
207
952
699
456
291
961
40
247
688
697
75
386
101
665
618
97
659
694
930
753
235
859
268
621
83
592
926
340
663
725
409
58
513
983
694
719
439
252
882
334
541
985
170
744
597
887
738
874
137
350
297
564
319
52
447
48
109
736
819
417
922
258
806
600
848
145
507
859
61
309
588
206
427
78
544
66
654
75
752
554
623
562
516
609
380
965
648
267
458
465
21
848
970
666
265
72
484
728
323
87
583
263
39
92
328
152
181
949
277
41
680
919
749
22
243
702
792
258
112
823
149
161
66
642
158
706
143
176
39
258
137
854
52
796
182
401
389
463
749
916
271
663
613
122
544
176
586
684
625
563
303
412
751
477
922
344
944
262
318
873
425
659
679
116
491
643
268
640
329
302
607
919
861
126
719
19
312
876
430
53
52
781
868
208
450
845
907
595
137
618
984
728
797
846
932
478
539
843
793
744
105
906
108
163
561
548
932
875
482
881
982
434
773
882
209
221
36
207
488
95
257
351
536
380
13
249
511
834
317
822
797
299
229
750
545
497
391
796
545
16
903
746
426
27
278
921
249
260
333
320
510
923
299
101
557
393
973
11
105
498
259
694
159
655
715
567
968
226
696
206
236
682
404
826
111
359
66
271
525
48
279
237
902
768
79
541
596
654
970
805
833
88
430
582
65
141
812
899
49
592
673
98
892
37
814
446
492
875
546
423
520
951
180
711
925
181
573
999
24
617
241
276
568
309
543
59
217
863
794
156
193
46
247
778
565
309
815
142
758
943
949
469
648
529
463
293
233
677
123
82
347
600
92
894
861
979
398
971
120
635
928
148
132
444
262
795
82
67
768
64
779
884
959
293
78
442
358
612
734
381
495
987
844
975
200
558
358
898
950
648
770
739
622
866
850
191
238
885
642
637
293
490
830
514
671
326
191
224
146
39
482
664
37
789
711
889
17
843
935
982
153
733
527
678
129
39
46
578
144
629
453
302
988
325
591
495
81
979
399
592
150
205
623
163
106
276
499
172
220
693
206
754
408
33
352
86
608
688
627
234
341
865
997
315
878
356
644
599
423
145
843
856
857
256
873
303
196
222
137
127
490
476
47
563
247
210
780
826
949
465
873
785
416
886
689
287
472
783
899
465
821
433
776
753
484
595
597
31
668
89
607
646
786
164
381
763
533
426
322
786
327
428
39
128
749
326
677
874
251
586
52
645
673
711
629
690
145
421
365
33
195
797
448
406
759
723
823
193
533
126
962
763
121
367
390
964
797
603
322
659
379
351
768
947
614
744
443
705
226
602
718
74
735
660
48
790
858
208
597
159
314
773
762
494
201
119
119
757
555
635
340
273
216
189
145
397
134
611
401
466
663
168
731
659
660
253
432
431
896
898
196
590
510
720
178
208
381
584
539
382
61
916
719
401
65
363
429
746
844
533
784
655
631
727
119
548
604
397
990
371
683
468
11
479
191
966
257
176
579
724
88
379
680
585
868
650
485
348
362
60
44
923
733
223
397
971
215
871
845
358
780
558
910
909
375
701
969
472
490
71
346
348
514
111
426
578
246
511
70
740
93
358
325
827
313
583
147
826
280
753
568
759
632
112
129
591
126
129
396
627
521
176
363
485
93
287
497
765
356
558
278
956
419
637
686
951
877
181
694
171
957
612
713
655
367
474
688
802
501
206
362
305
64
628
727
901
628
986
289
889
809
513
600
955
517
327
112
995
958
801
46
283
227
149
462
823
530
451
665
114
453
232
627
321
656
642
704
176
250
685
521
266
273
985
664
250
166
761
806
462
216
340
76
229
108
221
735
826
449
622
442
519
812
741
423
76
452
329
926
521
670
26
816
930
404
308
768
719
414
92
90
264
89
930
466
542
617
54
215
423
66
48
70
217
301
798
599
785
366
57
474
128
698
163
66
21
766
738
624
263
61
696
644
328
543
134
820
826
303
593
766
660
411
260
485
199
882
218
400
379
12
572
408
439
506
459
697
326
649
813
86
182
762
404
102
927
38
39
943
399
319
854
820
870
958
948
761
314
396
623
164
848
799
372
248
953
12
100
853
899
400
510
873
543
83
762
869
239
129
433
82
155
971
345
406
415
916
426
610
621
348
212
754
111
203
613
368
873
854
441
465
390
430
33
968
782
905
537
161
17
97
871
67
741
733
166
973
219
812
688
516
192
888
685
76
518
753
706
412
381
120
426
333
535
555
604
386
354
166
836
382
894
439
646
972
783
643
660
853
255
893
328
415
242
804
557
957
121
737
651
446
667
489
682
151
240
94
781
402
926
201
487
764
664
77
121
207
691
309
293
280
484
493
977
265
100
770
850
560
116
98
672
771
56
851
600
497
477
450
25
381
770
691
974
325
985
168
735
165
447
844
259
499
998
364
475
446
951
749
985
131
208
417
874
53
162
696
755
472
900
621
70
201
356
710
298
426
701
327
363
602
934
676
94
454
822
980
657
370
71
358
375
758
327
272
326
235
664
622
858
202
56
951
753
405
719
222
204
452
846
877
539
613
432
404
821
379
640
112
777
922
207
960
99
17
103
812
167
369
314
676
835
445
886
563
20
521
587
13
373
970
79
707
839
786
454
407
369
193
507
179
650
106
47
860
578
916
65
631
61
503
558
490
900
283
348
183
861
796
764
91
26
906
297
601
852
114
554
536
202
391
969
192
189
822
311
409
867
847
171
533
510
773
768
601
69
176
22
196
464
256
222
343
337
329
399
42
283
67
761
452
917
537
135
560
190
533
145
122
156
455
53
243
609
181
233
745
359
688
265
539
262
415
41
589
274
237
793
608
830
506
859
20
400
870
313
437
263
819
840
889
111
423
255
55
838
939
425
530
299
153
939
802
708
13
548
751
210
862
322
694
839
72
461
855
622
972
925
250
845
880
820
172
272
899
603
958
865
936
522
366
167
150
449
581
573
794
919
983
781
614
445
222
921
943
266
52
339
410
429
535
534
277
538
866
347
944
222
859
963
738
217
891
403
830
422
418
318
314
959
529
351
419
362
410
364
550
100
156
588
779
351
87
256
322
979
884
65
400
979
677
990
19
789
658
213
276
206
13
689
981
888
426
979
78
275
99
550
978
598
111
65
783
965
914
216
844
703
300
257
808
606
277
917
305
958
860
389
726
399
479
693
32
392
792
40
749
229
573
381
813
742
289
491
477
708
729
397
692
140
200
619
382
447
557
323
643
163
332
148
735
189
502
755
128
344
46
764
25
172
735
884
988
436
872
136
65
343
782
598
205
424
150
646
839
914
262
880
851
250
52
724
196
309
242
762
368
56
492
536
912
93
54
52
606
95
579
331
828
21
896
990
702
908
364
811
961
304
124
44
357
669
580
106
819
52
603
162
13
602
191
179
417
536
410
430
376
375
125
652
430
178
31
467
792
817
891
792
107
219
678
386
192
188
130
783
811
538
82
23
524
327
504
772
520
440
164
39
299
893
15
124
173
63
29
842
75
184
569
945
47
559
661
721
605
306
104
297
84
800
17
729
247
392
156
90
439
742
827
130
351
554
381
251
700
20
594
512
207
591
206
246
797
433
63
878
733
408
101
182
955
875
61
785
582
109
998
557
340
355
783
389
408
747
997
883
700
793
379
306
466
396
77
638
160
798
309
873
856
288
468
240
41
949
481
303
412
991
260
742
181
40
379
125
632
695
440
766
378
620
303
600
686
60
825
291
410
84
447
467
608
496
565
441
240
566
239
786
516
186
996
879
621
249
874
198
810
853
212
360
479
403
382
320
671
429
665
720
820
107
739
639
440
606
341
919
946
520
209
324
557
16
934
814
236
73
462
830
315
537
397
293
394
555
339
99
126
356
816
390
574
437
331
672
305
539
195
258
25
250
913
562
739
449
949
160
732
124
486
310
868
146
961
467
732
752
117
548
937
225
940
335
911
377
913
663
925
445
138
926
218
554
158
13
44
459
364
799
714
314
102
935
837
771
35
30
607
421
127
355
59
404
154
61
312
906
997
572
605
518
468
679
336
445
747
755
902
746
905
952
260
690
672
269
846
445
232
485
17
884
581
437
888
331
537
461
816
432
629
720
178
925
441
19
348
906
391
786
761
337
320
608
694
694
474
535
952
836
64
827
515
650
271
864
728
194
602
199
789
185
778
131
884
781
756
800
79
90
345
800
900
996
841
165
92
809
838
712
613
801
85
942
377
353
207
447
169
916
61
302
627
41
148
273
356
375
841
288
586
419
328
924
747
520
408
725
915
647
841
948
433
776
82
116
616
513
646
761
754
132
985
999
864
513
655
96
42
671
658
62
668
164
943
626
823
426
497
52
399
648
139
803
109
117
654
566
326
536
691
375
890
406
783
668
106
870
924
575
406
695
586
180
401
550
84
511
68
189
872
792
509
412
74
974
876
992
298
413
16
288
648
670
209
83
34
879
492
428
315
792
123
899
627
198
993
841
591
972
524
662
613
593
798
257
197
274
964
513
467
867
902
258
583
410
369
775
825
497
652
572
722
515
911
224
539
250
185
485
494
289
209
467
577
839
197
742
757
477
50
502
716
600
707
47
822
610
895
787
335
573
132
149
309
696
936
695
453
558
15
934
143
981
484
462
936
162
516
406
101
857
135
149
60
903
516
152
518
75
177
429
728
343
173
432
305
823
779
996
336
389
895
184
895
69
871
24
347
652
159
923
621
871
313
118
57
611
331
348
303
46
47
284
531
641
909
350
872
363
682
986
423
763
40
964
117
312
402
561
476
300
985
518
605
902
925
932
608
593
486
57
264
231
55
72
864
722
921
244
212
224
185
164
376
354
47
164
508
40
530
344
632
357
52
354
675
938
141
883
230
76
449
372
910
556
948
871
938
399
235
946
555
18
139
665
904
481
842
975
457
990
777
875
116
138
780
338
473
180
335
402
358
63
472
254
596
140
39
998
219
396
295
375
744
343
363
492
830
305
633
748
72
318
847
896
935
628
723
11
369
82
494
486
118
401
430
600
752
783
185
281
981
181
521
17
213
945
953
628
541
46
682
224
640
308
527
50
333
46
120
402
580
617
822
51
660
584
602
880
469
184
741
315
379
928
837
365
628
799
942
449
758
831
388
299
307
489
865
289
128
710
228
781
342
459
274
204
65
967
560
540
934
752
600
241
26
594
196
257
540
899
373
575
59
578
844
162
598
113
258
372
387
173
476
821
437
486
563
29
208
303
681
909
543
792
759
995
525
340
571
846
303
209
437
189
639
566
756
649
877
217
571
464
934
975
386
961
647
335
31
959
831
519
719
697
843
689
143
533
493
923
829
963
697
55
10
449
180
626
706
561
746
639
494
976
753
250
627
429
164
195
978
98
29
477
684
778
688
687
58
373
934
813
998
329
880
764
73
992
794
970
192
736
909
789
868
391
415
26
574
462
566
609
836
605
404
467
494
12
899
633
230
596
744
145
805
944
223
428
638
479
490
156
388
944
67
419
50
794
183
840
971
765
99
69
188
423
865
832
577
932
849
175
37
376
992
845
856
759
81
263
295
637
368
749
785
830
260
220
157
756
358
243
871
201
707
954
314
619
558
616
433
843
217
312
339
761
865
566
964
698
654
834
807
18
26
353
775
198
205
617
148
338
267
184
643
648
324
647
980
893
111
559
886
57
119
937
613
714
121
214
435
684
249
193
250
27
72
970
122
950
370
98
927
750
986
282
974
850
650
984
174
25
448
696
686
36
992
364
846
497
494
384
256
826
853
901
103
15
857
853
451
54
934
300
377
336
255
252
606
157
661
155
216
142
923
367
748
900
454
751
269
596
707
365
283
139
524
433
46
641
677
38
469
850
705
460
794
15
398
613
270
35
321
138
691
571
918
442
342
790
991
630
593
264
600
804
859
920
516
906
256
634
957
381
269
480
322
501
916
248
284
340
803
927
574
378
381
319
179
937
435
706
683
573
490
857
595
539
659
128
698
730
149
534
152
332
208
147
147
348
120
72
878
668
773
652
803
102
91
646
130
489
515
31
673
676
273
494
845
479
598
637
74
273
398
219
899
449
755
279
547
785
475
193
105
778
946
922
639
176
509
986
988
950
466
348
679
613
951
865
698
474
795
378
853
369
571
29
21
374
153
602
323
761
908
112
529
943
368
916
931
316
141
217
401
157
503
548
932
977
242
432
898
342
243
523
255
353
471
804
194
741
334
417
258
724
40
241
310
328
211
780
875
915
941
614
349
373
322
472
156
424
780
878
181
689
760
253
556
251
36
163
449
215
755
409
610
457
647
498
344
322
649
126
719
314
250
494
706
625
411
881
979
250
337
927
38
515
353
970
781
484
554
983
720
950
659
292
297
680
127
903
59
817
894
758
131
771
502
580
752
614
23
712
205
434
482
231
241
882
268
197
69
146
333
304
884
450
170
893
854
490
729
876
225
134
574
164
643
352
61
99
468
252
729
211
769
721
600
589
356
127
246
452
403
601
171
261
201
297
156
91
196
690
377
979
920
154
860
609
565
442
867
720
88
867
962
792
441
808
518
848
64
923
284
326
303
726
722
389
305
230
533
265
842
76
586
659
353
207
786
274
563
933
949
841
970
377
468
140
896
841
377
687
78
980
124
496
509
394
11
481
341
558
993
808
144
438
119
482
112
368
915
618
349
929
511
291
767
249
721
404
527
993
113
83
92
577
95
958
343
289
967
847
563
18
968
528
935
751
399
514
464
594
250
408
685
934
72
220
700
717
459
246
203
187
737
207
859
295
34
927
544
120
740
201
402
485
188
351
479
218
514
801
272
616
245
849
458
377
720
959
853
857
470
27
40
62
106
423
310
888
576
589
58
611
994
183
960
506
577
549
608
787
110
413
824
412
457
445
639
660
858
750
777
606
810
523
58
34
224
171
120
312
346
976
215
773
533
41
579
263
82
514
484
599
751
856
68
442
472
165
673
439
748
949
938
619
442
441
955
83
617
858
453
571
65
375
81
406
563
382
959
199
817
893
288
533
862
711
817
336
513
242
853
438
719
303
680
388
46
923
964
623
749
23
161
698
32
624
793
509
736
752
910
585
425
776
630
138
99
526
481
390
94
24
709
192
109
625
612
13
232
555
601
372
798
320
102
51
16
986
225
735
712
619
304
817
355
418
709
928
770
613
186
97
603
565
473
688
422
500
656
891
286
855
833
290
310
596
511
592
544
850
267
954
394
37
492
459
43
909
443
121
796
448
44
695
336
575
924
819
645
968
271
302
370
491
806
338
450
268
796
135
733
991
671
179
892
671
460
442
84
562
695
949
615
661
819
838
257
775
575
738
240
141
454
448
329
754
648
230
136
164
31
372
371
849
776
541
199
570
71
464
716
944
211
180
312
703
221
317
522
552
96
76
792
388
917
965
113
394
444
56
590
781
34
396
881
995
893
15
850
195
613
446
999
383
570
549
307
471
501
942
459
258
366
248
663
675
609
37
666
85
491
384
688
110
927
207
429
801
89
623
713
322
415
284
699
980
398
381
68
27
734
309
63
278
57
915
245
337
139
968
109
682
377
568
795
634
228
466
874
265
981
730
363
189
384
362
427
806
724
887
184
595
70
358
370
237
82
546
710
947
601
975
450
143
490
429
112
817
72
135
374
555
978
498
217
245
463
588
160
941
636
165
267
345
360
109
156
988
491
615
247
923
452
115
544
609
626
779
40
912
684
218
10
766
738
559
367
334
911
850
605
378
915
926
687
58
441
808
380
507
901
124
422
571
313
988
927
816
259
186
276
789
332
758
511
893
579
591
112
483
145
177
513
312
469
407
44
878
278
714
47
73
207
354
100
939
511
706
949
122
73
185
204
507
936
187
420
439
956
770
828
959
760
915
393
10
884
823
903
530
615
943
431
962
173
434
698
179
890
391
967
340
943
710
564
38
312
658
144
69
971
166
757
489
710
332
698
503
357
279
588
878
311
825
178
895
96
49
381
643
624
878
20
906
844
362
163
189
225
370
805
564
782
15
813
436
596
745
104
261
781
351
509
847
392
996
889
714
699
165
913
244
240
192
235
808
255
986
279
119
530
780
620
399
344
77
130
222
49
899
158
779
862
186
381
550
363
376
145
210
348
824
467
919
94
371
961
141
865
621
846
39
588
378
165
245
104
931
67
691
642
411
888
205
114
946
179
439
280
720
716
713
46
115
438
420
441
92
574
173
871
738
72
861
187
727
217
626
922
911
735
430
903
509
534
693
408
420
963
520
735
42
721
671
191
269
45
628
361
913
123
231
263
188
981
913
138
247
724
558
266
286
410
414
248
817
639
90
161
135
103
832
119
638
279
772
823
334
779
341
829
22
962
639
964
829
17
544
948
72
195
893
231
880
828
639
872
589
228
495
20
938
456
876
674
116
815
252
256
242
289
380
481
93
945
395
449
56
250
656
19
154
371
501
741
559
315
385
921
427
764
834
578
47
106
781
809
95
375
515
873
574
566
835
167
721
83
594
434
965
706
127
581
660
555
802
722
990
264
608
651
758
482
555
732
622
509
732
552
708
692
446
345
110
813
511
312
665
206
687
698
408
162
334
758
449
500
938
690
133
488
88
194
126
167
683
781
168
915
519
654
149
673
616
807
967
84
695
311
62
70
864
551
321
63
236
558
957
286
317
443
651
846
354
82
299
429
28
931
118
755
910
275
390
73
911
373
450
526
255
663
183
500
50
384
603
319
33
875
484
264
655
783
876
337
367
213
304
472
694
388
889
827
341
694
303
103
165
501
327
152
210
944
415
760
441
654
648
548
899
97
369
942
199
529
48
673
537
578
796
404
843
574
407
333
314
482
889
798
928
26
807
787
905
907
714
221
699
443
143
974
820
95
685
163
571
242
954
520
763
172
883
505
892
870
603
751
217
756
72
957
589
310
17
636
992
339
697
138
746
650
156
133
73
566
385
187
655
172
998
389
330
62
181
334
714
988
218
708
192
256
191
896
582
474
493
399
982
440
913
968
921
66
699
205
100
921
99
548
125
281
475
638
32
462
692
25
319
739
930
880
363
335
98
214
136
817
258
193
725
236
876
551
89
924
220
600
493
203
973
768
228
462
728
986
426
920
446
199
151
205
149
81
885
784
89
619
127
497
225
303
628
805
837
956
759
563
812
978
585
727
449
411
267
58
374
691
137
855
919
743
586
867
607
846
312
492
154
86
995
19
418
254
977
425
709
224
584
658
762
87
755
192
407
725
858
42
34
539
678
289
732
324
113
163
355
288
348
614
970
592
620
58
153
486
121
256
185
468
417
570
594
12
659
265
436
65
849
666
773
760
868
605
456
642
560
48
960
289
177
490
767
93
893
880
212
55
412
937
491
358
416
653
616
334
535
148
232
192
897
614
364
229
662
205
583
844
357
640
53
422
606
546
538
398
211
125
896
94
963
140
575
329
499
967
480
696
770
599
33
948
95
209
129
790
709
745
156
25
807
612
987
784
283
678
367
237
576
459
746
838
276
866
378
616
354
716
442
102
765
416
197
568
690
460
913
175
137
740
552
91
264
245
555
221
506
671
499
49
117
28
466
479
826
970
677
101
740
223
187
191
191
224
196
302
970
314
930
674
825
525
982
945
180
395
474
927
454
760
240
303
166
356
696
451
409
223
900
338
346
430
520
327
433
993
556
484
850
406
350
547
938
994
86
15
605
230
131
877
656
649
389
454
362
262
997
892
137
94
54
10
335
956
579
178
483
702
407
938
185
754
331
331
223
835
759
937
803
296
183
228
412
845
970
225
602
593
226
418
695
452
371
597
964
479
278
682
744
172
758
760
62
454
807
915
181
463
341
150
621
72
956
349
416
770
450
318
398
484
176
896
566
621
136
552
240
275
104
491
617
503
429
433
392
327
741
557
833
142
504
605
944
353
377
323
942
140
57
920
56
25
479
756
47
285
941
77
739
848
443
703
647
967
272
512
89
66
683
282
740
584
290
524
164
674
134
949
656
804
577
125
290
26
155
918
682
839
805
263
637
527
305
972
552
822
24
371
634
758
280
162
997
747
364
371
335
397
942
513
434
714
160
713
218
597
452
288
436
947
407
701
248
523
260
101
197
589
760
25
548
839
465
547
187
73
489
410
431
281
835
32
126
180
820
488
754
772
467
888
628
980
279
237
660
908
639
53
595
162
865
82
226
334
531
158
865
873
744
74
653
903
815
402
618
378
53
218
14
510
567
97
540
426
639
928
275
299
298
724
339
618
416
834
179
113
469
491
345
697
255
655
810
712
810
834
201
787
662
996
604
772
54
78
777
388
377
265
742
306
197
115
733
22
438
798
791
232
50
771
222
239
91
677
336
727
287
171
924
904
911
661
920
979
295
292
527
342
206
262
568
613
887
367
437
711
579
889
735
411
328
21
884
829
824
854
499
357
800
184
869
535
666
19
611
325
152
981
307
212
99
459
124
617
894
935
248
117
14
409
641
487
189
284
354
173
958
908
104
301
335
45
515
118
115
278
49
17
201
654
892
313
978
627
73
564
24
840
479
410
206
246
736
150
17
435
504
225
659
791
698
694
250
414
667
325
412
855
27
35
769
472
436
351
879
889
381
726
271
660
160
11
733
680
53
82
419
658
222
784
55
368
623
475
915
700
882
832
137
585
484
515
118
769
839
792
830
747
718
203
339
83
162
88
310
966
311
719
474
619
581
926
188
853
20
724
269
875
621
875
856
604
805
822
453
911
617
568
162
13
551
934
207
371
634
290
964
81
813
697
722
673
245
925
347
336
577
348
317
167
751
994
214
437
414
572
794
430
483
52
651
310
115
203
686
410
926
796
236
770
852
745
331
597
396
306
504
35
146
876
689
805
247
312
77
702
350
678
676
703
847
871
212
246
207
897
815
201
826
395
930
837
165
739
605
808
43
848
26
788
63
704
937
693
476
733
475
109
366
565
688
735
836
680
104
628
556
782
266
994
631
548
192
617
755
292
810
615
922
764
596
258
426
543
329
14
171
986
206
776
853
953
945
905
437
366
69
765
310
265
635
699
364
145
157
959
349
451
550
916
258
973
816
670
308
142
921
870
975
102
624
100
360
270
473
619
875
739
158
927
391
444
239
954
659
495
240
795
392
48
811
467
541
550
925
224
375
119
245
515
495
664
11
801
865
27
342
476
73
65
519
688
73
455
951
749
311
232
758
252
866
106
40
424
40
859
18
362
333
665
339
66
261
426
360
952
607
234
793
40
562
464
990
662
419
629
44
726
489
123
280
348
968
287
165
439
77
970
18
470
891
245
896
335
89
433
704
971
197
336
939
457
877
421
551
363
130
269
490
243
593
327
430
877
135
511
552
446
739
416
777
914
430
931
762
568
240
561
563
396
920
238
923
303
847
755
907
420
958
187
713
34
773
711
504
927
155
919
977
972
486
625
827
488
806
312
719
192
421
401
234
46
258
779
199
983
603
289
954
28
684
547
121
337
895
597
475
425
475
682
579
500
899
281
538
759
200
841
76
31
688
320
145
53
450
835
329
667
164
970
877
658
625
803
811
215
940
932
11
519
351
672
436
735
923
424
805
625
135
713
134
702
368
81
187
749
667
184
693
455
468
21
399
478
379
315
742
199
538
503
240
990
359
818
557
910
171
579
737
183
80
626
917
210
323
165
264
263
303
529
896
472
310
240
70
583
741
134
20
48
809
856
850
136
488
88
706
665
241
818
31
585
298
440
167
935
257
990
178
126
51
245
427
667
817
968
752
812
676
973
238
403
157
772
172
496
849
644
519
488
569
761
931
706
13
280
888
661
374
140
695
708
764
165
323
890
579
900
422
372
148
901
709
21
625
75
673
952
28
417
492
384
79
582
720
173
881
49
914
833
387
833
253
712
309
952
57
680
916
634
697
654
835
211
878
169
276
346
731
399
631
586
281
256
149
320
36
912
436
10
255
448
895
10
98
715
446
741
35
666
454
150
28
899
850
955
270
132
771
663
743
485
247
935
600
280
100
503
966
342
652
221
792
766
799
425
66
547
739
619
572
540
682
336
580
377
749
432
125
819
576
511
626
412
417
423
161
418
923
459
779
852
957
460
173
952
697
438
338
648
847
152
452
529
478
681
336
302
744
282
951
70
143
767
677
527
685
818
464
396
857
677
648
626
818
667
75
868
227
792
348
638
600
306
280
57
192
844
305
376
572
798
557
204
669
36
84
828
685
70
294
540
169
317
438
675
721
715
432
899
857
260
153
319
516
863
357
106
45
945
586
148
928
379
290
35
896
422
79
378
396
362
790
665
140
936
567
481
635
262
105
728
699
145
649
676
811
15
126
989
788
295
272
300
960
252
225
629
877
475
128
416
850
572
168
272
570
989
70
187
171
438
370
994
502
627
882
300
261
227
438
341
685
734
785
331
611
604
98
661
665
120
534
630
671
12
337
836
495
343
415
313
471
614
909
100
288
937
203
684
707
856
695
957
485
50
456
562
816
921
595
667
540
604
80
120
900
119
957
825
270
241
74
390
880
950
545
58
276
780
898
938
924
526
518
879
671
464
899
629
104
981
525
252
184
641
51
907
692
253
717
730
446
335
279
598
778
284
789
524
979
703
37
619
182
319
64
621
495
48
803
267
927
553
67
202
809
141
350
494
220
784
82
432
258
159
140
56
134
636
168
833
602
463
391
63
296
346
87
800
743
575
610
420
744
409
432
457
677
512
231
242
280
486
20
108
442
500
558
351
832
687
96
458
739
89
947
411
516
323
527
778
532
358
107
574
248
577
942
512
312
958
508
427
141
997
777
221
274
980
478
235
71
344
998
914
917
176
198
580
643
74
307
706
264
565
82
307
440
925
714
293
808
358
657
404
654
307
532
541
836
196
358
620
886
922
864
908
848
202
289
85
737
824
89
747
867
699
354
657
643
628
645
210
666
773
750
787
143
247
551
63
564
345
269
839
376
834
93
856
280
363
533
662
868
825
612
597
839
898
678
416
474
968
113
32
908
220
937
777
743
667
943
356
826
100
825
411
226
496
87
228
73
492
388
606
594
785
74
778
851
355
44
766
622
969
482
502
980
867
511
921
686
569
801
567
590
652
263
167
354
815
781
675
721
497
320
584
398
27
546
503
830
779
281
481
25
672
990
259
984
53
418
258
387
992
219
261
217
16
906
740
456
745
941
258
480
54
895
204
467
472
808
287
898
40
581
419
233
956
90
550
576
112
414
345
770
676
838
20
819
353
745
72
682
253
188
522
725
41
771
248
918
779
833
548
181
414
802
190
255
21
748
914
891
908
603
477
28
838
996
121
730
871
309
828
317
440
430
373
911
308
406
653
793
976
733
668
818
143
306
665
292
43
43
673
949
949
488
269
473
83
424
53
20
61
181
977
715
726
317
986
407
211
357
703
27
598
164
517
617
13
718
171
361
176
395
409
893
971
380
464
764
113
141
204
794
432
124
942
486
362
182
704
239
704
813
914
502
423
858
730
620
670
420
747
271
573
828
816
113
131
925
442
755
13
705
229
425
332
938
359
793
27
440
290
51
575
115
614
119
923
967
697
308
309
447
946
404
809
372
767
461
812
870
365
649
949
362
852
417
120
958
773
727
681
460
958
299
725
30
572
320
768
200
482
513
944
813
546
622
904
27
67
79
261
890
834
359
657
811
761
508
994
104
241
425
148
352
188
915
689
25
74
56
839
49
193
864
535
686
356
164
758
451
775
881
250
98
68
222
77
48
943
311
463
751
904
462
205
388
659
900
635
603
34
791
522
780
955
65
148
269
175
567
970
312
728
655
904
942
788
675
543
522
18
131
471
886
210
350
697
127
336
132
384
229
146
15
28
576
968
67
178
742
80
45
772
198
532
418
704
588
131
14
998
484
572
247
104
124
158
492
173
981
363
211
901
447
749
833
485
340
117
167
681
199
205
149
77
949
55
898
431
194
931
629
931
61
357
587
241
736
65
845
555
211
897
798
337
977
853
841
752
856
269
949
650
310
825
977
31
49
322
140
124
475
401
466
781
99
759
806
430
886
564
866
857
497
563
201
905
885
832
874
715
870
855
229
360
154
326
462
124
127
936
657
661
324
591
879
824
746
113
712
175
661
483
302
252
393
844
873
629
489
271
119
823
712
726
814
872
900
81
251
372
561
424
277
371
774
634
836
296
744
641
621
359
467
291
384
856
702
365
652
654
872
657
314
85
505
253
375
126
213
789
539
546
391
924
646
925
301
165
290
397
641
563
89
57
112
952
688
72
172
994
183
342
491
256
685
79
901
688
356
540
208
445
146
683
665
110
523
802
132
778
78
292
429
849
452
518
266
938
411
156
163
527
843
87
402
125
856
183
604
426
810
725
59
574
20
604
615
28
324
93
89
584
861
396
540
909
564
334
224
28
818
745
567
42
61
389
50
140
42
156
839
794
432
656
242
493
487
937
310
417
884
714
721
533
460
869
733
258
174
320
508
707
616
743
832
823
475
365
10
294
111
753
587
115
800
82
843
155
110
434
731
565
299
764
920
127
751
974
107
750
938
390
640
588
100
627
840
466
145
601
593
718
488
179
551
518
246
293
788
749
728
690
481
633
46
645
684
700
725
669
40
436
706
30
977
481
707
80
316
621
181
749
858
620
866
766
794
239
479
532
237
67
824
334
869
714
183
288
165
849
468
234
213
951
690
644
861
508
329
781
227
727
471
176
362
986
206
592
265
963
495
885
920
486
579
971
533
703
202
856
327
993
879
741
106
408
970
637
895
597
133
111
190
41
612
390
24
954
159
821
106
911
704
216
937
454
937
992
394
942
490
268
956
424
811
514
719
903
374
598
180
819
797
273
269
724
26
234
758
855
278
721
103
356
746
52
239
919
500
266
86
699
109
658
823
136
948
134
956
785
221
730
12
678
952
724
336
674
741
536
574
950
696
929
179
603
560
565
928
592
68
714
963
222
205
632
510
600
108
245
993
605
624
469
196
725
103
998
340
419
452
483
76
942
820
127
338
735
514
541
440
665
186
955
412
951
363
377
444
313
355
536
652
835
759
154
853
253
980
62
41
329
95
736
581
890
615
28
451
876
338
488
520
389
47
940
78
580
737
943
804
118
471
14
943
60
948
380
596
219
25
28
296
390
384
620
586
320
518
701
386
257
493
900
996
905
811
877
850
519
176
637
302
948
410
153
186
509
570
37
516
110
355
470
87
680
448
532
334
316
135
285
87
450
448
807
121
473
341
135
443
13
936
504
314
415
337
646
884
510
321
513
803
935
896
785
211
519
181
815
618
260
697
720
723
82
742
850
470
352
517
688
939
707
116
378
994
422
289
10
463
35
821
920
211
650
946
73
583
210
750
472
501
495
95
873
881
497
221
733
316
183
899
872
895
269
534
763
224
109
496
387
825
436
558
602
677
905
232
675
591
356
150
930
346
570
265
539
487
625
372
598
992
525
683
428
19
338
93
853
222
97
376
371
730
662
444
467
70
122
592
879
436
544
748
595
228
293
717
645
246
184
325
793
79
43
792
229
78
180
319
526
607
786
115
26
425
213
732
184
199
809
632
105
640
956
912
710
23
770
44
835
133
322
415
57
543
250
333
843
491
415
911
979
317
132
665
163
231
471
317
33
428
568
462
56
38
328
611
549
732
695
837
571
732
753
906
118
467
828
648
188
695
637
816
168
810
892
790
989
160
180
75
676
615
149
323
34
735
451
656
863
210
613
880
639
567
503
410
768
260
21
794
118
902
891
90
712
816
700
33
275
636
689
225
926
239
874
722
365
556
632
635
461
606
185
397
596
484
667
950
366
626
198
648
757
722
121
152
20
940
571
52
702
613
37
671
341
751
730
351
426
731
710
592
418
464
102
131
988
260
403
208
293
864
873
601
611
381
984
276
665
533
641
838
58
352
831
370
462
755
30
398
680
317
577
905
918
333
860
389
371
235
92
498
834
561
309
985
292
88
439
367
818
727
449
172
721
615
190
219
971
658
614
127
642
231
353
608
35
416
615
196
859
318
233
477
558
279
680
630
22
762
837
844
665
701
561
800
709
394
36
668
590
377
903
291
733
618
871
605
975
418
899
761
918
754
23
169
899
946
481
128
89
631
378
601
679
899
492
65
537
680
353
897
209
356
28
15
441
470
396
691
541
975
515
613
435
607
143
360
284
481
42
84
460
48
543
761
868
373
20
962
836
959
903
624
468
607
56
516
990
519
601
70
493
157
670
494
472
918
570
435
541
425
699
436
314
862
958
214
992
651
963
293
91
650
927
199
218
312
57
479
117
20
418
129
214
253
582
549
784
142
631
298
903
36
209
912
624
625
100
102
560
856
915
237
498
782
782
521
865
355
961
21
40
289
203
534
787
975
382
257
434
400
177
120
822
960
755
472
792
534
714
478
368
944
308
725
736
115
808
146
32
75
39
976
241
902
158
937
954
213
459
498
435
752
495
139
312
584
119
454
537
130
617
295
635
246
714
153
931
476
714
33
392
170
961
273
186
347
243
641
822
794
403
87
556
228
695
942
374
578
890
824
904
62
382
178
474
165
602
150
853
540
662
464
296
906
418
213
374
797
924
818
238
288
752
803
330
786
266
723
568
405
521
192
135
270
722
206
846
531
837
517
288
409
116
935
579
776
52
192
213
496
711
374
77
326
974
926
81
766
462
449
781
443
591
129
722
645
389
376
389
625
965
974
727
184
391
55
822
651
266
692
630
987
807
650
466
762
608
649
424
204
807
571
841
975
664
390
602
558
344
143
124
661
882
771
692
984
910
546
361
281
614
122
688
858
834
851
374
372
577
723
726
793
669
547
591
555
366
549
194
845
733
651
595
684
968
441
194
907
360
600
766
654
527
668
194
582
294
171
888
704
695
508
639
125
446
472
292
153
934
429
691
187
215
51
584
501
197
818
958
476
48
374
953
141
96
177
316
785
198
802
681
294
426
956
683
313
209
866
134
397
403
571
805
334
989
510
379
928
87
497
774
556
252
411
78
11
274
174
803
836
649
714
797
187
860
745
740
57
73
111
338
520
631
242
326
445
108
106
964
235
336
613
854
413
927
618
202
906
846
740
652
489
743
999
364
740
190
528
489
138
37
946
223
919
282
716
167
956
158
208
958
913
714
405
281
439
876
863
845
551
711
349
220
43
563
142
122
36
176
613
907
980
958
91
674
700
494
100
657
666
382
492
28
36
749
443
658
40
319
893
982
130
601
89
151
190
179
884
773
396
204
13
194
710
322
305
489
326
117
905
348
304
386
117
398
187
121
228
794
862
253
615
37
911
683
290
420
501
930
221
680
575
106
888
341
552
767
168
133
765
856
304
512
979
479
30
828
940
312
365
687
766
373
135
128
670
561
884
317
721
428
962
246
268
959
818
610
720
342
306
940
170
520
950
41
705
480
614
843
946
617
18
882
430
556
804
450
490
377
624
893
294
651
379
509
330
350
546
125
790
695
288
93
243
589
635
815
622
107
32
302
529
252
995
811
894
203
637
822
137
862
682
960
768
534
673
433
699
408
699
957
416
405
893
452
15
996
391
385
556
899
32
10
809
407
762
698
593
635
721
417
529
432
423
84
447
103
391
743
813
646
535
441
59
367
927
531
811
695
662
37
36
714
155
486
985
687
527
948
867
667
307
413
836
644
44
73
297
239
404
509
881
454
451
838
558
316
831
650
517
928
42
715
953
879
879
548
472
535
391
941
304
763
554
426
819
134
346
335
800
330
387
975
350
828
603
165
154
734
139
690
503
263
642
901
857
570
865
59
45
415
433
623
380
412
393
391
702
191
445
500
121
309
799
392
112
602
368
717
479
980
920
526
890
674
556
690
843
475
246
455
760
448
77
131
378
702
390
841
623
299
929
196
294
336
285
569
724
999
800
578
262
200
351
225
729
411
225
732
201
80
683
82
813
689
438
341
870
31
422
175
283
544
964
108
205
856
204
134
212
67
964
891
418
307
101
386
110
442
775
305
805
652
720
968
276
234
246
173
353
790
473
460
511
799
253
122
652
17
823
393
917
190
264
442
78
214
345
913
273
992
289
37
461
740
712
625
998
836
852
766
960
957
523
839
86
951
228
980
908
470
329
257
501
373
615
286
620
414
704
633
540
80
392
355
297
124
666
488
774
106
650
405
161
944
284
952
54
492
938
492
621
604
120
918
689
853
312
282
513
788
66
408
492
609
928
97
80
155
854
737
15
184
332
365
592
892
329
268
747
434
371
991
517
232
572
845
898
32
406
169
826
258
726
898
772
245
866
698
802
363
708
99
511
387
816
878
372
29
446
922
568
423
690
323
915
476
968
950
128
593
829
565
461
296
564
519
195
565
886
500
754
192
864
517
987
43
122
279
925
951
537
182
252
472
790
471
841
438
567
415
968
938
649
253
836
142
36
191
19
296
892
944
712
300
846
382
888
631
40
503
502
53
959
959
862
983
34
172
452
66
457
850
682
49
986
510
244
56
986
970
13
636
727
732
803
389
611
894
196
991
168
947
550
341
336
310
584
241
414
407
468
860
163
395
558
64
147
516
543
377
254
774
313
750
188
184
882
475
692
647
404
123
716
703
880
230
449
465
700
413
393
238
987
997
543
945
324
23
464
353
63
884
896
891
563
812
848
711
900
490
934
43
580
747
607
334
166
760
576
777
277
88
588
466
532
410
672
751
914
667
853
381
481
952
255
643
273
809
628
967
131
312
29
744
207
344
150
621
559
621
469
560
630
487
140
469
59
558
832
65
411
183
829
781
583
613
565
744
742
496
747
918
829
970
390
170
297
78
446
394
291
93
86
94
413
881
40
228
354
966
168
680
90
576
600
488
437
600
211
405
689
11
347
77
808
764
878
469
989
586
758
806
448
266
148
984
451
88
653
215
250
79
198
846
757
832
13
871
119
210
552
421
261
498
109
41
108
324
942
389
86
41
908
904
361
980
291
734
611
142
483
207
37
280
183
961
19
47
104
620
838
579
302
78
607
333
455
125
239
156
99
319
388
188
341
137
610
511
81
670
398
604
925
657
924
305
336
295
771
950
405
67
195
814
69
660
38
376
109
340
960
932
81
149
389
670
172
699
889
618
444
489
835
26
663
992
58
744
856
828
951
849
336
255
556
436
894
708
222
68
613
251
287
106
135
397
487
865
632
949
481
917
380
892
57
184
607
778
486
318
259
337
302
332
635
14
897
622
188
804
769
760
396
101
75
524
300
90
260
475
129
754
707
315
525
504
237
548
407
40
167
698
244
728
401
216
918
923
761
746
549
456
542
552
518
515
453
393
224
427
506
666
549
337
225
433
489
555
828
852
685
447
141
283
578
604
948
320
80
641
169
985
152
452
357
676
362
812
396
984
609
831
406
672
756
108
961
287
782
900
194
309
108
613
821
135
972
206
996
649
997
777
845
249
154
943
740
652
476
817
670
240
528
920
164
391
819
671
429
580
880
366
730
707
20
245
917
686
115
754
445
352
958
312
458
169
343
796
800
569
394
300
74
928
22
183
841
797
697
323
497
194
768
623
970
579
181
114
566
102
505
566
24
769
579
932
854
898
840
787
736
489
146
525
394
937
212
703
828
476
938
609
814
191
626
959
426
174
591
349
260
285
278
390
446
615
297
260
111
768
778
641
823
936
10
822
936
591
888
605
378
312
796
611
920
878
921
252
318
563
279
13
307
836
486
590
686
240
606
252
207
552
307
221
989
740
946
280
84
713
826
193
683
319
457
241
573
627
846
947
869
938
71
167
269
956
800
209
378
185
616
677
913
52
717
587
351
833
61
213
40
218
60
241
776
649
42
639
715
891
533
510
544
500
275
742
522
834
201
446
475
102
229
847
885
329
255
906
661
134
797
917
479
29
585
97
750
198
213
200
688
887
437
376
452
451
824
45
267
893
837
416
732
663
616
184
447
970
916
882
215
607
654
689
258
129
614
974
655
459
647
692
600
780
552
540
624
901
37
747
214
982
768
507
775
828
899
95
208
231
590
27
631
251
639
339
774
607
791
894
435
797
477
94
812
715
117
17
31
700
571
651
677
563
987
265
646
396
911
725
648
297
311
659
458
719
758
855
538
430
127
237
150
331
51
375
668
803
427
109
914
840
77
615
655
903
180
253
864
194
974
467
843
366
397
191
76
810
675
237
613
769
747
643
634
444
194
915
537
123
936
824
648
865
652
231
140
645
924
19
481
133
179
610
75
328
32
840
603
779
371
843
964
104
571
114
88
969
744
529
348
367
643
511
712
402
613
344
110
990
788
789
898
279
467
190
406
189
946
556
604
812
415
477
314
146
867
219
857
299
490
807
949
223
675
320
338
297
397
512
608
306
797
573
889
324
953
718
683
999
779
637
793
704
47
344
955
88
20
145
377
410
93
829
874
538
392
945
202
695
696
240
552
427
37
643
291
852
790
993
655
333
673
507
353
134
436
409
310
468
25
631
709
804
665
650
888
960
385
758
42
939
980
556
370
89
778
480
325
541
148
606
205
223
193
241
828
217
828
526
314
612
522
180
979
805
502
245
331
915
182
690
106
780
659
497
105
823
767
697
405
540
390
648
19
792
407
651
319
431
188
474
279
383
287
841
328
800
481
827
101
193
427
501
495
587
554
483
873
36
38
404
273
231
928
820
597
335
526
216
559
296
393
934
86
769
681
97
104
887
718
621
443
868
957
492
239
131
892
971
219
898
779
359
527
693
478
886
33
545
793
274
378
178
797
523
468
288
656
635
561
87
790
107
308
876
74
423
47
860
951
116
722
502
534
823
205
64
551
393
770
559
838
673
921
566
586
327
647
855
775
649
571
101
329
431
705
848
510
504
118
370
758
437
480
512
526
965
442
954
694
31
73
858
180
391
781
101
804
614
464
581
389
963
67
563
66
440
58
891
682
885
14
201
114
676
206
489
222
661
307
226
568
596
108
113
216
952
257
790
362
842
942
264
614
711
325
412
534
289
803
786
320
607
93
235
208
852
749
752
490
382
920
291
16
967
639
411
756
890
650
824
135
38
206
968
291
753
225
899
591
472
859
545
345
889
700
999
291
285
861
606
728
342
652
553
600
646
919
949
214
641
525
545
701
651
663
344
32
234
312
426
813
816
638
377
735
257
292
283
670
853
219
31
63
421
758
963
741
524
875
917
89
712
958
65
740
448
969
102
303
84
223
906
890
839
168
818
84
380
573
754
573
462
453
738
120
89
361
968
604
602
371
335
975
716
163
87
790
681
835
206
622
734
539
185
748
104
412
351
481
143
648
402
426
484
166
977
240
389
276
216
501
750
410
431
222
531
275
61
115
982
231
517
125
843
162
460
862
960
40
741
723
488
731
507
217
361
364
165
798
938
471
30
574
508
38
240
406
443
906
396
996
169
608
795
528
827
204
578
582
885
885
64
791
294
359
892
290
901
574
978
86
840
282
689
337
493
947
324
633
667
623
22
820
419
953
343
182
742
303
171
968
984
842
716
888
326
155
744
131
76
689
561
275
988
309
575
632
195
690
168
892
509
771
160
739
341
535
495
776
731
348
602
372
865
874
840
819
382
630
46
502
86
384
855
668
999
738
141
132
939
854
443
244
516
242
240
166
662
936
164
991
56
930
321
264
248
543
10
835
351
56
818
675
233
600
879
291
656
215
982
894
825
300
784
818
624
301
298
673
166
523
595
944
480
313
265
320
959
786
391
558
500
921
133
193
352
705
753
738
43
787
104
501
693
926
530
204
46
942
700
703
387
991
998
801
751
228
418
773
739
725
699
725
110
564
296
573
602
845
798
888
617
27
677
667
282
46
840
457
72
932
458
537
293
424
97
581
422
432
754
434
442
445
174
21
341
155
252
569
559
476
510
250
172
215
53
951
141
89
615
420
920
341
62
680
177
531
305
979
560
928
184
168
725
952
308
177
387
880
948
321
963
986
741
794
960
514
303
754
856
352
643
382
861
590
219
159
878
777
18
855
452
615
653
11
449
857
227
145
55
993
321
238
185
272
471
950
387
662
887
154
618
712
299
560
254
415
497
866
832
159
963
532
762
674
348
760
364
10
478
267
146
942
233
971
760
399
434
987
438
334
462
88
236
310
114
42
400
50
125
36
174
12
137
249
781
750
707
72
98
977
682
275
735
764
686
871
892
778
255
925
203
213
771
986
761
692
773
54
612
776
557
10
873
179
40
886
131
990
587
853
776
735
754
126
486
149
162
780
103
301
77
215
936
176
432
855
86
69
833
261
563
401
901
876
924
483
431
548
61
215
562
44
133
758
11
380
206
152
216
482
956
153
272
293
419
845
327
364
688
405
376
232
643
318
583
976
639
222
773
683
682
452
185
761
913
468
859
847
287
392
739
214
364
772
463
549
664
116
866
511
50
474
924
464
78
935
871
891
222
719
95
612
170
267
406
201
685
939
380
852
257
631
637
68
359
439
77
181
614
57
901
623
517
249
912
408
204
797
312
552
144
610
525
862
570
656
158
872
646
375
577
881
871
555
116
835
100
112
158
805
188
225
168
101
178
700
905
112
172
426
631
630
296
915
871
142
95
765
298
569
510
133
992
54
144
56
449
162
25
422
351
77
166
902
615
631
383
295
77
386
600
358
988
330
689
524
476
50
540
984
307
782
478
261
978
47
938
286
362
583
750
628
674
134
666
218
485
268
633
501
399
574
315
605
108
247
175
604
213
252
645
440
509
449
934
385
230
510
423
979
220
569
95
436
163
782
15
402
246
191
276
504
853
902
439
633
190
116
41
951
477
733
211
850
631
906
518
305
472
225
49
710
14
608
151
896
240
535
482
366
521
845
353
377
473
916
228
882
318
887
286
199
66
337
803
157
25
350
796
273
150
363
205
662
488
284
707
616
435
303
938
731
60
234
492
886
127
479
884
855
579
897
362
172
295
172
83
921
429
801
433
339
30
879
846
986
617
432
37
834
546
684
425
300
456
583
574
420
59
503
821
429
219
194
412
702
560
625
608
593
836
924
749
600
638
507
637
829
659
808
961
733
768
557
825
572
744
884
943
68
98
684
911
217
579
348
864
356
577
962
58
78
695
415
232
546
286
356
708
434
224
426
650
283
69
876
568
514
117
149
207
855
470
354
522
460
859
307
354
177
611
735
721
227
111
392
578
921
927
564
42
765
26
465
17
926
248
255
756
902
90
780
616
165
620
999
219
645
441
947
182
371
626
833
162
862
645
568
345
33
90
839
314
210
33
757
667
385
65
456
357
678
837
817
104
543
585
598
51
888
820
74
171
777
133
194
451
672
643
789
138
955
738
938
190
250
482
209
938
732
845
740
945
928
391
77
525
855
208
167
436
741
325
60
26
506
623
281
457
548
668
299
412
961
613
529
471
389
616
14
147
972
92
487
872
704
669
427
677
664
982
519
705
649
483
977
448
303
262
881
983
775
631
887
607
642
734
102
640
638
402
932
807
820
383
341
56
110
425
864
968
428
735
688
566
287
987
439
404
690
453
568
642
589
21
33
147
820
355
787
93
15
941
861
653
346
598
598
532
707
37
378
16
329
733
79
562
815
489
716
933
588
384
775
878
851
729
546
724
319
422
796
540
982
821
650
632
861
19
961
391
149
18
956
405
312
834
524
900
548
894
205
332
174
434
262
506
314
17
813
291
943
710
373
805
70
278
795
527
184
858
126
907
203
470
999
471
118
685
428
622
873
788
595
905
531
333
254
539
187
202
816
61
425
40
17
151
534
212
320
229
327
417
956
534
244
881
232
479
542
318
457
805
520
564
492
403
607
943
136
639
709
863
624
261
422
847
588
309
333
549
894
287
885
828
773
831
793
480
250
560
423
319
14
15
354
727
359
474
549
121
419
102
234
270
29
955
430
905
811
685
726
877
891
875
732
949
413
914
822
923
671
948
779
598
210
596
704
121
690
537
307
236
779
79
929
424
114
56
497
124
357
603
468
854
115
814
932
448
260
396
624
215
208
667
85
643
762
600
466
787
569
846
302
308
448
470
604
874
589
591
990
322
840
723
83
28
761
838
783
189
863
623
234
345
940
629
439
567
756
864
511
171
103
771
417
244
311
499
871
938
818
439
845
731
181
948
681
153
714
200
892
472
468
601
503
242
194
628
598
758
205
751
195
517
83
703
624
916
701
38
716
397
615
342
872
350
107
636
317
214
905
672
378
274
121
950
596
291
789
582
724
936
868
308
517
786
143
777
786
885
64
144
521
223
938
157
724
176
754
744
587
122
134
50
905
564
843
629
143
802
353
860
200
315
518
953
664
238
740
602
993
541
84
692
616
271
652
261
631
164
95
682
683
625
245
814
957
343
558
487
115
209
729
262
543
993
533
557
343
33
804
157
744
463
971
768
281
370
571
402
933
867
712
765
421
539
855
564
471
182
583
781
797
86
664
291
292
718
587
211
402
951
746
709
612
124
789
351
622
655
387
242
780
126
81
962
429
717
278
372
580
176
740
739
772
30
921
667
529
373
209
868
882
373
338
415
349
751
950
364
214
207
849
951
254
959
633
850
513
283
66
497
263
396
199
806
939
95
251
678
863
74
174
388
60
713
570
391
47
917
111
556
226
807
697
122
286
656
828
602
961
213
334
827
826
992
481
655
763
602
388
205
438
617
539
125
837
217
177
687
575
84
422
645
89
620
321
176
988
128
721
661
762
406
125
397
963
363
46
917
776
123
994
859
278
620
556
446
452
366
736
604
533
571
41
947
372
761
568
872
507
430
193
483
546
14
500
210
215
367
566
48
657
326
463
329
47
227
750
239
451
270
18
226
905
596
630
58
636
732
425
153
857
154
841
901
19
236
257
670
529
716
152
565
263
714
931
870
501
419
281
360
347
635
940
722
46
763
184
679
35
813
640
855
503
586
829
25
773
922
295
134
256
767
820
899
172
535
491
333
451
599
44
469
258
128
405
936
990
230
924
800
44
476
701
631
831
483
501
708
509
837
974
499
235
320
144
501
165
72
917
621
32
797
554
148
233
536
207
200
786
767
823
865
120
546
665
957
284
385
260
39
853
15
605
860
938
203
460
43
161
79
274
788
348
606
79
17
527
589
420
181
530
624
389
264
331
408
345
205
709
396
431
575
545
934
139
295
306
150
817
68
750
448
179
909
561
718
932
242
758
144
285
828
121
554
301
776
513
577
635
335
513
888
735
882
709
256
193
511
763
227
399
566
691
369
290
272
127
371
408
77
985
716
447
981
722
670
649
195
307
153
593
906
126
197
684
229
617
417
451
361
796
538
856
517
686
434
17
702
44
658
231
240
102
470
498
169
411
931
450
311
334
655
610
671
731
296
908
965
763
224
995
785
497
89
701
72
934
999
155
878
344
27
971
118
937
765
117
479
381
947
505
997
409
572
175
754
508
435
151
580
579
881
98
359
161
481
423
874
467
576
266
942
106
746
682
885
402
850
195
904
557
602
882
667
791
527
621
326
558
175
429
275
188
955
922
164
194
335
768
876
685
965
296
223
504
815
166
47
490
558
794
918
880
112
817
131
631
503
584
459
790
971
174
780
432
797
596
382
201
823
347
469
325
907
861
729
747
480
726
789
747
871
789
736
344
587
880
711
44
103
602
865
548
650
597
264
298
328
447
379
75
440
814
218
240
938
14
891
186
574
361
678
926
622
739
517
987
372
262
755
199
594
603
279
744
279
667
740
442
927
160
189
258
206
682
713
389
199
706
629
874
814
649
467
388
296
257
411
20
630
327
811
508
135
184
164
63
63
716
525
568
654
837
793
568
274
336
234
73
176
864
439
935
436
664
475
83
343
800
493
849
379
821
722
489
738
135
886
636
907
572
812
648
438
89
43
851
733
365
905
687
802
564
415
153
247
733
523
189
599
910
749
829
443
862
355
141
333
311
122
648
804
390
769
725
997
865
488
386
159
636
546
491
382
883
312
649
18
699
713
441
881
61
372
401
355
380
691
30
12
295
192
918
76
265
646
94
163
603
107
307
885
446
208
709
143
66
82
753
753
324
383
245
982
380
632
918
25
139
351
831
701
622
884
141
44
508
184
475
901
727
140
796
822
83
43
836
867
235
207
144
622
333
650
116
418
357
362
552
90
967
463
342
251
962
846
432
495
140
578
846
656
513
880
241
259
542
292
922
458
480
557
567
287
597
226
166
954
703
878
606
734
758
362
597
954
965
244
418
381
707
370
703
270
142
836
930
635
222
897
75
407
364
172
622
707
552
197
379
494
797
496
322
357
291
91
68
367
388
866
400
182
508
682
79
353
237
754
49
307
248
425
478
723
29
46
366
213
14
198
843
685
860
669
867
640
364
929
575
418
586
291
393
373
817
334
39
306
545
832
681
220
195
794
512
658
484
245
333
180
270
413
836
833
842
995
166
589
154
362
155
887
266
207
404
661
251
403
653
38
353
313
218
496
741
737
692
150
130
807
461
259
288
783
667
584
443
466
932
527
266
706
149
113
776
482
222
620
467
896
494
151
908
500
393
180
304
512
898
174
965
959
962
715
445
110
630
718
342
60
69
970
711
384
239
635
238
295
713
274
960
931
400
284
778
874
517
566
29
959
408
204
370
733
243
574
266
38
709
873
504
178
679
311
187
941
508
496
881
389
771
486
788
169
584
83
689
865
679
191
765
417
728
951
950
218
579
498
723
803
813
385
833
469
682
481
793
131
766
382
567
97
30
693
858
395
790
170
570
432
658
291
239
579
912
861
883
318
843
927
215
40
924
640
984
197
113
593
288
435
817
741
621
551
261
221
904
44
727
423
78
672
143
916
451
725
829
357
161
927
640
471
657
179
792
551
787
788
636
25
972
364
719
290
508
773
842
586
619
258
458
706
871
517
253
400
621
846
832
826
81
559
634
99
301
825
655
243
502
329
423
760
848
303
34
684
523
740
553
307
961
921
429
231
308
584
565
103
55
469
477
858
451
553
104
223
978
995
732
671
429
938
845
127
402
780
196
971
189
955
909
390
476
823
205
615
540
409
877
384
506
853
901
698
962
701
277
172
524
298
850
683
623
971
476
735
181
94
253
297
980
597
827
343
215
286
25
278
537
480
73
521
253
371
298
369
359
606
390
662
247
350
835
209
519
72
121
560
215
898
914
377
921
937
758
211
966
342
563
234
235
90
528
144
450
252
125
123
186
945
820
730
431
709
449
574
631
813
618
738
61
651
229
612
83
283
345
897
236
131
285
319
802
974
818
956
437
105
185
420
179
165
506
412
773
889
594
479
240
834
365
324
497
572
728
748
727
437
680
204
781
813
762
649
942
212
135
519
452
614
335
776
907
842
213
659
219
485
359
83
649
205
118
650
283
255
709
50
821
778
866
800
580
528
388
387
635
892
757
848
852
320
518
227
913
381
960
991
111
415
992
73
154
327
481
920
73
497
105
876
736
908
512
986
710
573
69
346
207
67
262
698
939
243
433
389
699
995
200
42
449
330
803
174
72
42
894
794
313
589
205
941
709
950
916
162
396
566
416
429
898
840
943
613
54
460
659
899
202
914
810
89
644
278
428
323
986
959
987
436
537
804
515
12
714
167
539
661
677
169
207
480
430
907
846
618
799
761
536
572
497
841
775
456
72
126
40
693
710
317
942
985
729
37
865
325
771
315
888
720
37
627
446
237
674
744
806
503
599
116
429
631
789
884
315
364
490
753
22
343
755
568
748
732
56
329
304
280
20
447
46
748
749
33
359
809
413
202
387
228
543
271
696
884
326
607
213
778
636
998
855
430
426
269
343
876
242
492
997
212
953
527
936
448
330
178
402
293
184
39
736
406
397
280
236
88
232
489
302
286
55
327
75
522
705
419
574
385
697
257
575
387
348
141
778
925
734
723
681
104
748
464
80
522
835
932
536
679
49
289
986
405
765
190
75
742
714
49
578
573
374
323
175
924
410
346
850
506
949
848
563
930
315
79
290
959
542
716
559
145
730
673
111
502
564
471
874
180
431
401
50
319
849
443
637
938
732
912
907
787
387
992
301
889
833
685
287
631
572
337
832
881
512
965
766
703
655
862
990
782
674
110
753
371
275
816
52
292
246
32
978
445
329
924
697
429
495
632
225
126
923
32
553
951
342
739
944
516
365
628
800
148
418
847
193
465
859
426
726
697
178
703
615
87
541
485
415
879
34
800
110
382
397
141
38
416
463
844
504
247
125
980
64
899
523
765
149
586
363
184
339
916
475
988
206
177
525
339
404
459
429
557
627
245
853
937
618
454
286
329
484
637
170
805
145
247
356
352
849
733
719
88
232
294
924
338
852
632
794
920
484
285
511
31
235
791
641
362
326
367
844
838
496
710
620
86
209
771
654
909
872
392
584
224
999
519
312
180
660
636
32
893
603
130
850
724
165
462
353
960
531
749
360
589
156
818
175
973
927
687
384
398
188
371
127
724
669
173
603
969
960
347
508
284
447
892
758
544
267
862
114
492
588
241
847
135
14
357
691
291
601
444
813
863
976
645
495
352
593
121
394
471
957
453
284
690
668
292
438
126
753
877
666
424
146
789
280
705
790
176
135
275
563
834
722
949
202
187
837
534
751
352
534
358
755
698
934
969
398
708
757
878
564
322
406
183
281
296
466
811
58
252
402
784
887
656
445
893
794
947
664
340
418
468
525
727
951
196
179
888
959
730
176
75
478
551
80
100
950
410
72
252
673
437
272
952
404
829
478
248
954
359
71
943
994
961
249
805
680
71
629
281
415
398
705
957
325
786
975
136
287
975
986
570
580
316
378
242
584
764
422
750
163
737
734
492
670
946
197
692
113
821
74
708
80
268
557
47
766
220
179
723
999
673
769
674
234
915
342
352
119
696
509
572
757
255
151
581
809
511
218
818
261
294
113
470
614
917
149
692
955
198
683
91
313
614
383
18
115
812
246
338
688
570
850
591
534
113
530
384
847
505
492
631
537
440
885
310
567
802
894
673
878
758
503
196
28
688
297
394
282
546
737
271
813
809
822
204
845
326
840
183
72
107
240
217
773
488
80
415
41
468
278
402
665
376
257
868
416
878
343
415
256
415
529
217
88
990
764
563
637
19
289
334
258
445
438
223
272
451
755
616
959
910
105
439
633
948
561
669
235
578
856
547
688
773
133
355
762
917
39
833
442
921
888
894
112
650
891
439
317
732
512
489
196
676
468
989
21
306
703
41
129
811
201
757
744
534
391
988
254
877
666
458
568
261
746
689
850
843
511
183
473
818
176
736
618
914
711
652
965
470
933
410
386
919
22
875
649
46
776
391
582
912
401
170
575
70
917
473
209
699
114
835
69
899
481
585
167
180
376
40
162
581
643
873
184
900
277
449
420
229
163
346
841
42
91
274
662
619
237
633
148
920
891
803
69
112
334
438
359
867
501
786
920
43
166
684
297
805
126
568
366
93
113
779
401
53
112
818
89
777
371
406
495
541
989
239
478
437
62
34
274
325
701
800
868
957
383
968
874
692
670
169
568
967
378
288
653
294
168
460
863
766
863
425
782
984
972
957
312
456
372
838
233
291
305
631
698
788
499
781
396
262
337
30
811
935
61
477
592
809
247
674
108
442
376
938
589
517
423
595
733
450
604
392
745
13
618
229
48
73
486
359
728
938
962
817
144
463
871
270
995
486
783
891
633
114
778
998
60
618
51
503
764
358
497
435
706
12
790
656
814
992
395
431
50
679
747
665
250
125
143
220
350
447
499
875
802
287
95
869
192
254
252
243
110
361
868
529
172
716
940
461
588
745
31
683
204
125
408
246
948
770
258
409
750
816
194
62
674
113
344
540
57
880
955
671
464
154
438
142
405
643
793
858
198
800
481
204
583
137
242
478
856
738
324
598
966
111
445
622
646
895
38
397
508
413
158
94
688
254
535
18
478
185
993
750
539
303
188
683
190
199
289
777
650
389
963
101
344
523
308
463
73
241
393
854
423
46
771
830
328
104
77
348
293
774
966
171
772
242
633
424
681
930
287
302
578
160
916
779
415
706
900
493
219
946
257
586
25
124
338
352
601
508
153
358
64
549
235
452
11
938
836
123
940
138
192
569
820
447
386
506
982
584
145
624
287
176
387
449
343
720
886
126
337
65
315
555
170
64
835
670
731
150
480
326
379
703
35
491
259
400
849
155
689
500
306
205
75
563
694
168
763
711
773
77
686
142
850
93
634
441
450
860
951
389
461
469
445
136
49
137
523
221
88
496
777
265
595
101
593
946
672
384
839
160
689
628
868
688
455
814
750
860
43
95
633
338
542
15
468
762
659
975
74
537
259
679
499
268
973
293
991
497
742
449
432
772
105
308
252
89
626
446
316
511
227
901
277
912
218
713
375
783
27
428
286
241
750
988
340
808
506
657
210
955
313
162
279
790
48
917
226
215
290
768
528
484
731
597
775
144
733
106
439
309
155
303
854
243
547
493
670
977
509
378
554
437
800
81
115
517
502
292
329
939
492
427
354
789
800
309
715
812
611
685
154
392
272
333
636
596
189
811
172
34
961
38
768
758
733
158
919
750
798
531
210
286
408
945
986
286
368
594
206
166
44
663
696
112
684
770
844
995
874
264
584
300
98
244
526
752
993
128
841
674
209
405
414
23
536
674
150
711
435
89
542
808
341
857
195
554
493
901
397
971
91
84
879
633
423
244
617
183
112
835
759
661
765
650
808
259
391
125
309
431
208
854
981
774
991
123
364
222
199
794
177
383
914
879
378
947
690
880
634
263
139
204
27
382
332
814
552
284
335
581
787
877
902
398
471
134
958
741
263
473
995
80
487
847
888
409
676
698
872
736
891
121
715
736
499
76
750
396
517
67
129
189
73
331
191
636
516
911
915
737
631
824
103
829
690
916
389
162
171
177
141
457
82
340
558
80
348
952
245
175
668
826
502
621
979
731
239
333
359
614
169
687
224
876
916
462
267
366
60
539
983
593
315
483
621
470
446
436
457
577
935
571
236
791
545
171
674
616
506
532
915
687
322
484
985
985
352
686
937
353
115
475
856
439
744
311
761
568
635
64
533
916
590
877
675
752
423
319
89
692
766
573
937
202
663
37
53
500
894
195
205
21
102
159
351
70
87
317
977
114
547
248
237
715
760
240
108
930
846
521
364
461
672
850
896
513
127
471
990
480
531
341
723
525
56
638
904
481
324
913
804
106
195
703
573
60
985
519
237
80
834
968
128
766
849
351
754
780
945
287
628
881
119
692
806
565
88
230
334
128
419
119
448
193
753
331
262
132
469
364
154
757
479
192
277
579
366
41
246
230
460
450
870
327
260
275
279
229
967
336
905
210
235
16
75
442
185
938
951
672
246
753
945
790
896
771
958
511
709
672
478
592
441
206
925
283
537
680
72
364
682
154
526
414
339
293
12
65
177
862
410
697
965
629
37
674
968
188
27
416
898
311
423
987
249
845
520
543
208
480
923
737
148
385
275
258
523
980
100
411
404
155
758
59
43
898
115
455
352
250
875
946
959
762
167
100
453
693
431
839
816
500
911
653
310
537
446
912
90
487
495
727
952
322
403
283
661
749
307
803
99
894
36
768
761
113
33
884
336
461
691
684
267
322
44
776
555
44
617
851
821
684
159
253
159
440
700
354
459
482
259
512
279
123
802
119
798
465
413
485
709
738
568
308
878
207
40
251
82
14
502
983
673
358
968
21
561
629
553
29
348
488
538
443
535
424
797
43
240
277
447
132
616
431
687
323
951
154
896
317
731
82
590
719
733
15
704
719
295
46
632
141
935
381
308
528
350
352
618
657
563
22
355
776
77
731
137
729
185
259
304
923
572
902
88
658
892
366
30
252
720
242
456
445
172
595
779
111
520
115
466
611
950
532
683
240
27
456
18
834
672
822
871
840
934
573
682
187
436
779
805
277
676
916
742
223
348
407
986
645
908
568
801
820
439
218
954
432
508
971
927
974
506
880
664
316
302
491
465
73
29
645
384
645
701
635
769
108
532
863
525
100
338
755
208
762
489
38
647
776
253
78
208
370
150
870
256
642
673
922
714
706
888
125
479
946
271
352
819
479
643
39
227
511
401
321
992
420
96
871
241
813
671
182
521
832
40
734
642
408
377
621
239
910
349
866
334
693
962
331
267
888
877
269
776
662
148
418
735
71
180
798
344
244
508
101
692
445
31
979
342
534
291
939
229
886
999
880
942
80
834
662
345
804
35
845
333
404
287
859
518
861
189
228
467
961
366
11
537
792
683
965
806
181
349
26
65
74
460
315
575
354
608
547
834
224
262
142
126
233
429
23
39
840
203
88
37
817
196
848
367
971
880
841
259
802
954
960
227
851
593
338
820
564
649
228
73
800
870
760
659
766
874
334
20
696
229
587
909
837
605
579
536
779
54
449
365
240
170
901
442
173
810
861
146
162
791
779
560
632
538
952
497
947
267
936
485
460
198
516
422
242
790
191
862
873
150
404
685
760
797
705
901
369
322
889
219
928
957
682
403
20
440
852
40
974
729
214
894
142
744
47
213
11
344
384
657
567
475
130
218
689
783
690
896
797
184
707
330
558
734
737
126
62
508
919
954
848
813
699
769
511
335
892
496
934
352
454
872
210
295
476
211
28
720
811
707
28
470
992
752
630
326
186
932
603
950
67
36
301
836
478
330
816
127
521
24
422
971
237
528
267
286
15
55
290
943
346
85
364
493
972
181
136
340
130
582
84
14
576
903
543
532
985
124
844
191
127
430
470
801
801
526
883
262
12
816
343
104
477
978
29
235
234
104
815
182
201
207
320
838
526
919
839
518
157
577
407
542
141
831
608
379
114
718
651
647
708
681
473
377
518
580
928
96
221
390
605
327
627
120
926
510
370
900
591
362
901
90
205
972
363
493
127
811
855
451
104
338
930
981
235
763
168
527
489
953
66
997
657
336
762
226
953
906
768
345
744
427
253
400
428
330
897
245
20
580
667
319
530
520
849
41
221
535
255
193
625
850
940
247
621
242
498
75
782
905
669
916
142
697
476
168
451
822
950
946
402
213
657
427
547
431
745
699
233
294
154
441
790
975
696
722
58
986
441
643
798
801
794
146
530
685
374
54
995
368
342
826
84
998
949
441
64
669
732
61
710
252
940
237
507
696
219
797
396
893
350
705
311
895
773
318
462
509
143
669
884
297
385
329
78
122
700
479
20
569
270
928
234
360
234
63
92
392
811
95
382
608
82
655
329
731
506
207
155
306
97
266
361
81
322
149
771
142
957
542
577
146
336
572
461
376
956
452
192
142
661
240
328
359
578
452
767
83
73
23
816
997
55
157
36
593
459
995
974
376
859
409
585
892
445
937
494
918
752
124
336
17
892
318
109
849
865
381
363
89
49
712
76
24
421
377
767
302
335
333
72
866
590
619
36
496
915
987
315
264
972
318
224
121
305
832
877
139
361
846
769
15
452
225
637
70
706
745
869
373
10
430
62
281
729
523
824
449
316
151
589
362
168
449
518
118
965
711
65
895
538
726
137
932
308
924
744
126
989
672
54
736
316
107
458
432
851
755
54
884
786
40
647
235
965
711
13
798
644
614
883
578
741
185
453
406
903
38
26
101
722
958
166
37
528
836
409
42
272
269
356
782
590
396
12
426
565
360
905
454
25
930
550
194
743
623
182
883
567
149
272
393
708
718
906
850
399
593
777
283
318
956
996
279
165
273
355
750
151
185
111
511
596
701
29
46
57
312
712
529
247
629
706
764
165
149
120
761
199
986
257
265
262
751
792
805
967
295
27
743
414
521
509
255
480
654
701
54
50
782
640
337
311
792
504
568
701
362
324
268
380
933
396
143
500
735
960
715
805
625
10
915
154
158
997
751
572
875
316
302
76
922
428
920
851
995
446
288
995
725
897
400
23
594
411
692
987
594
521
332
185
280
39
531
913
960
261
622
973
321
458
47
65
119
25
505
18
289
89
431
809
585
947
879
188
515
124
28
842
467
263
225
932
830
743
145
877
35
135
418
46
773
951
78
345
376
225
252
819
827
56
414
936
418
442
953
309
805
949
756
468
721
35
665
206
156
96
197
360
32
38
85
662
40
447
993
600
117
816
606
221
81
19
766
758
188
34
845
592
394
945
488
915
509
83
188
337
877
164
219
38
367
821
625
37
938
82
201
63
570
998
766
411
480
966
293
789
821
907
911
308
568
712
805
645
380
319
269
382
695
704
950
83
10
442
304
387
887
250
373
772
107
959
703
380
134
643
149
444
829
326
792
596
277
138
349
552
376
510
162
174
770
595
650
76
456
487
316
831
93
781
608
579
205
665
30
541
474
657
708
880
424
967
893
636
367
796
169
79
303
130
922
363
54
646
253
327
279
669
618
815
795
489
853
615
794
700
754
447
696
759
108
321
826
181
118
755
924
294
832
606
693
946
936
768
268
709
328
884
365
939
617
351
717
330
113
180
472
475
397
907
28
396
940
421
455
324
303
937
898
139
989
433
29
172
561
80
423
720
373
193
168
862
144
690
96
209
691
489
405
596
42
221
53
833
541
538
583
347
122
926
186
17
698
969
175
614
367
223
607
785
697
695
436
192
419
828
364
189
881
305
755
482
104
331
693
716
644
441
977
28
240
184
595
98
22
152
357
684
707
640
932
859
812
296
929
225
120
108
715
439
932
402
269
742
39
440
140
480
759
689
357
736
558
140
340
694
211
134
796
621
958
277
38
855
523
581
886
453
746
637
272
779
87
829
308
584
780
93
322
444
265
422
447
207
398
146
448
978
427
442
860
737
37
759
710
464
801
27
565
680
591
642
120
498
575
875
377
796
326
898
272
750
871
584
691
19
190
844
381
705
709
116
995
230
114
841
349
810
307
485
639
65
509
287
153
300
836
569
498
796
364
564
219
172
188
470
430
686
665
968
779
545
559
717
831
735
528
504
573
187
133
678
753
500
168
461
179
250
123
48
370
590
71
482
614
674
308
740
348
970
101
422
635
455
722
635
441
49
25
278
75
755
821
429
176
483
432
210
989
302
259
82
221
843
233
179
921
137
473
57
762
433
949
202
524
671
433
387
314
753
489
480
988
164
918
251
135
868
580
805
487
930
847
119
923
409
792
519
473
167
430
782
887
859
824
112
644
881
750
441
156
560
584
462
875
783
877
358
300
720
128
953
204
686
256
165
822
453
224
317
566
606
427
905
330
157
258
795
277
331
306
854
183
144
478
491
64
601
233
402
809
638
141
532
127
760
107
969
123
790
948
571
30
854
914
482
619
471
668
141
570
192
584
781
824
868
401
523
66
528
975
71
590
453
924
54
696
65
925
446
323
204
80
883
277
237
283
712
796
571
734
108
619
312
39
70
983
667
654
629
946
306
74
312
211
614
109
848
205
985
175
338
40
228
217
16
818
531
895
612
569
711
349
342
901
302
195
342
334
543
823
443
340
117
721
466
142
867
221
902
223
118
47
811
420
347
980
343
716
588
181
371
181
24
683
338
950
670
638
157
311
848
759
965
196
285
250
76
223
120
824
120
172
216
870
993
552
467
693
226
763
331
233
601
741
93
86
43
231
963
669
174
344
83
951
303
15
658
381
195
540
483
406
338
657
928
341
471
560
999
331
51
876
249
741
416
303
240
376
214
839
334
349
547
249
534
795
800
587
226
357
443
87
45
830
764
864
593
635
766
851
719
220
656
670
228
405
122
274
699
875
264
731
892
38
249
203
207
516
65
812
886
275
589
14
188
96
351
716
499
813
703
381
38
951
92
642
671
583
829
389
560
927
801
548
580
334
910
71
568
699
760
629
815
601
975
310
565
887
863
179
552
128
466
480
954
507
972
367
609
232
463
790
272
332
854
245
723
281
760
96
191
423
939
114
189
475
946
201
232
306
896
982
138
116
927
782
778
72
247
495
950
545
82
341
450
149
494
864
482
150
55
552
559
523
906
506
180
41
485
607
84
61
709
502
958
427
337
866
613
547
750
181
730
268
473
105
291
377
359
121
211
661
964
825
105
730
418
160
232
684
42
677
335
510
912
976
85
755
313
367
785
456
464
821
489
396
813
770
946
129
488
257
362
121
214
694
473
454
246
428
539
684
858
946
511
656
324
305
290
924
587
675
435
108
697
786
641
675
531
140
261
382
900
737
799
90
275
467
569
648
685
140
484
18
718
554
150
644
736
842
182
957
44
923
300
276
717
156
821
345
854
344
487
897
679
744
85
730
454
833
307
980
267
497
961
784
449
140
761
843
465
716
393
467
986
213
431
635
871
959
157
760
357
607
356
561
449
585
241
339
256
355
107
194
564
650
676
109
953
730
689
638
419
953
470
935
920
533
732
677
201
392
40
589
63
379
383
846
422
379
710
462
422
467
146
63
728
294
194
511
822
730
458
878
671
108
857
105
489
992
384
669
817
983
542
850
302
944
296
902
527
829
225
247
803
305
991
770
994
102
37
53
104
455
527
75
959
687
125
522
843
979
105
131
93
609
542
254
966
302
226
300
649
943
268
343
293
819
372
197
274
787
592
868
428
337
902
509
932
644
479
624
846
585
478
177
928
647
50
591
958
976
917
221
596
718
826
771
873
108
31
151
837
689
277
997
129
448
404
20
487
236
12
284
783
738
631
978
593
86
885
185
510
870
967
327
326
536
487
188
650
522
670
639
975
525
112
922
901
647
206
719
754
170
255
44
822
983
26
899
23
935
611
649
171
832
210
528
781
369
792
53
210
889
604
17
186
934
796
106
818
104
965
232
643
252
489
635
378
697
787
845
536
333
209
919
710
266
435
144
336
281
135
457
874
601
96
42
494
429
150
942
960
452
510
477
772
162
367
844
248
340
701
928
187
383
778
988
151
553
388
662
216
49
90
49
782
230
868
185
917
639
520
816
647
528
274
737
803
805
509
595
440
159
693
661
642
248
21
368
887
546
779
414
64
616
680
90
494
334
610
893
988
273
376
835
60
848
717
661
969
518
584
367
923
990
868
900
523
101
705
608
716
580
169
832
357
938
469
506
510
445
867
125
895
97
299
67
233
430
43
356
135
305
404
371
110
801
909
387
453
285
65
72
52
889
981
669
450
675
810
405
955
393
876
888
177
704
308
510
453
184
266
771
957
698
530
206
731
732
641
583
770
345
381
790
710
847
592
736
539
220
114
772
651
231
188
529
809
686
671
379
594
43
301
900
732
223
377
978
309
499
859
491
634
355
400
665
598
35
557
524
393
457
342
670
687
387
701
24
39
196
998
63
472
867
586
374
505
822
577
361
129
380
861
593
224
391
706
906
680
485
10
302
816
201
536
692
130
740
17
389
709
624
128
136
515
441
244
10
706
26
697
216
962
144
989
93
814
426
14
488
299
204
407
230
76
750
448
914
520
698
889
179
484
998
775
978
309
616
954
745
674
716
458
443
193
243
428
373
25
443
987
918
147
484
881
503
75
503
852
344
269
172
989
50
286
88
811
717
374
637
443
814
947
801
169
475
899
566
723
823
359
446
904
827
483
604
618
798
945
962
565
383
621
234
317
329
392
810
550
863
761
32
336
507
863
324
247
375
99
555
869
837
766
891
840
172
202
471
539
923
330
335
709
471
901
332
538
557
700
444
888
724
589
386
581
928
587
101
972
204
288
481
465
772
829
658
788
555
126
215
842
975
103
18
373
600
650
729
515
322
543
61
383
610
916
578
311
418
583
724
386
104
688
919
476
600
899
624
569
275
832
146
256
767
431
150
468
377
122
906
185
507
164
850
747
414
341
848
441
691
560
232
905
423
228
254
240
954
937
863
337
642
395
484
461
18
949
629
224
518
876
90
486
883
194
946
230
729
885
90
203
672
415
463
695
661
925
919
869
659
373
61
302
53
618
267
863
657
459
906
494
796
956
788
48
877
928
283
595
800
764
597
168
993
190
265
207
758
249
489
325
149
662
539
72
385
764
934
929
457
72
352
991
990
463
576
683
485
108
794
274
501
574
523
939
145
872
972
256
948
432
954
905
424
867
717
406
735
242
724
923
744
650
330
66
218
48
570
500
697
515
978
485
289
549
662
488
955
945
258
422
899
794
127
279
964
35
366
348
675
240
409
423
631
658
876
558
710
703
912
475
132
613
390
209
425
907
108
544
456
344
824
683
210
822
447
292
859
431
892
278
851
454
316
198
654
309
528
404
322
497
652
575
597
86
379
289
874
467
16
991
71
934
207
200
628
883
563
600
891
54
74
899
526
110
642
585
218
343
547
534
117
113
187
474
177
895
764
894
604
406
309
426
569
15
611
86
878
570
568
327
706
22
451
658
258
522
799
400
164
37
487
871
634
190
290
407
934
242
529
488
675
387
215
114
797
365
592
407
905
273
421
599
922
267
342
850
643
454
494
294
333
176
900
559
464
143
572
350
165
203
374
689
82
593
37
641
217
155
284
738
126
779
410
575
326
267
609
551
204
564
33
396
756
777
86
789
751
60
89
194
42
541
374
835
229
350
119
938
549
169
803
27
697
27
26
417
528
996
67
567
963
966
48
692
922
464
781
486
347
626
602
880
545
117
702
899
308
119
414
394
461
400
194
454
450
226
693
101
372
571
320
375
800
163
98
713
576
64
91
39
224
331
21
83
143
604
131
714
619
117
981
623
936
506
813
380
697
51
331
988
686
886
616
405
358
313
618
107
228
243
404
64
148
195
897
478
276
637
171
831
688
640
987
727
897
231
981
202
720
399
519
252
288
799
706
916
643
686
339
258
523
330
792
986
866
27
869
971
840
51
101
924
225
485
457
159
851
505
96
852
49
632
400
367
803
978
668
122
158
909
546
947
488
540
381
713
308
196
553
229
287
493
952
501
758
642
700
662
883
632
128
156
98
903
46
421
258
921
276
156
460
295
853
787
377
727
987
309
916
374
608
661
514
166
778
825
109
181
410
804
48
809
921
610
51
588
19
610
754
55
490
88
243
686
87
787
483
847
714
590
778
584
699
832
609
625
36
941
122
791
437
422
549
470
48
535
374
44
42
725
425
174
634
204
476
737
911
369
502
456
920
896
902
283
447
588
946
276
846
114
575
858
460
787
299
515
529
798
534
85
358
420
746
639
429
897
986
340
270
530
313
700
393
746
453
471
506
258
350
812
185
686
782
103
601
142
210
82
226
756
709
887
762
510
192
676
869
697
476
97
214
508
21
301
535
437
838
803
497
841
122
721
288
385
577
34
148
783
218
661
461
788
370
991
972
218
997
585
509
546
30
829
613
578
196
499
661
528
638
701
674
152
432
123
896
599
256
392
214
133
578
348
214
906
195
857
222
283
881
910
344
64
550
63
91
815
758
722
561
810
472
772
688
664
951
666
102
673
985
379
360
259
675
844
389
200
504
390
922
632
169
359
199
751
697
314
385
95
860
336
275
549
270
356
177
226
764
430
205
253
71
748
228
816
169
59
778
361
907
496
450
528
804
442
778
29
298
909
286
415
512
287
222
647
296
730
442
593
654
746
120
489
95
113
818
127
212
67
811
592
882
793
443
12
589
843
193
682
984
23
728
280
353
231
238
78
805
293
769
973
932
898
509
183
756
843
787
354
452
236
53
529
826
10
54
774
339
28
151
511
270
851
230
211
996
285
719
804
683
815
491
797
820
459
536
899
153
70
693
672
15
201
928
308
323
759
206
773
297
217
339
534
86
301
195
885
105
12
573
851
601
631
195
59
724
190
92
709
937
918
688
247
521
889
546
46
745
636
850
160
47
29
808
249
976
113
107
867
279
861
952
581
340
972
664
661
295
53
761
203
692
886
86
452
728
15
832
463
560
761
104
443
497
18
635
811
855
234
182
159
242
628
121
628
844
471
362
340
345
954
130
184
952
350
159
622
393
884
272
243
334
794
856
150
916
100
842
592
492
652
793
103
464
708
694
665
114
206
238
478
993
178
552
115
900
736
220
17
320
205
555
773
758
154
581
280
422
320
906
887
664
355
698
709
229
210
862
648
243
172
73
250
82
74
953
166
162
541
144
480
557
347
434
71
344
508
770
367
526
493
135
31
371
274
246
252
139
122
26
139
576
143
69
65
645
722
153
420
865
662
300
633
269
408
366
638
405
825
567
504
745
178
130
412
306
960
311
538
890
568
71
51
571
41
874
750
901
187
931
286
388
316
422
115
469
367
960
208
14
342
510
387
513
830
189
196
545
96
422
212
102
149
920
723
130
716
693
670
823
795
977
761
353
788
208
526
584
946
972
91
215
760
160
676
540
95
446
772
941
827
507
455
988
579
565
549
518
310
618
207
629
659
407
553
929
176
910
777
470
421
10
115
350
392
364
629
626
179
380
120
418
516
726
324
232
333
250
176
234
390
626
217
751
656
550
835
817
378
90
594
806
304
983
622
165
813
94
997
544
953
920
413
401
41
517
527
138
623
162
812
722
74
970
566
108
762
754
948
459
391
769
692
767
948
172
985
504
726
259
183
24
824
655
998
842
709
416
599
395
607
322
662
211
491
568
335
132
38
776
911
337
931
133
833
712
936
212
85
393
355
596
265
755
721
217
628
799
450
352
130
325
290
327
279
606
513
200
564
393
599
384
589
58
672
853
984
155
376
996
629
871
703
719
609
289
324
598
95
59
776
73
163
947
483
719
308
506
809
313
668
188
109
11
887
905
629
457
192
764
630
689
227
744
199
559
339
551
451
107
928
202
32
875
366
752
719
56
296
143
911
149
947
640
662
770
819
978
853
917
326
620
334
329
499
862
661
383
775
151
698
438
512
240
260
797
362
333
828
629
86
341
619
667
882
687
662
700
246
675
196
591
762
338
476
39
359
248
638
680
125
590
560
962
271
945
722
333
87
290
220
274
819
745
582
737
984
801
770
915
490
583
342
267
55
439
991
920
213
274
538
333
600
198
471
934
148
377
581
818
366
52
83
269
772
881
315
251
571
38
521
540
209
370
405
42
408
257
352
994
247
534
869
564
152
94
608
880
960
516
998
561
485
654
720
203
99
720
19
95
507
874
998
270
350
95
185
395
733
428
131
108
673
814
364
86
980
730
812
681
139
849
805
386
127
614
775
470
189
949
858
655
203
736
519
404
112
544
716
118
249
387
196
314
771
923
927
980
215
281
63
215
794
425
552
872
208
719
583
602
843
478
277
834
523
385
931
650
960
266
266
867
573
97
94
956
981
115
866
592
733
64
86
917
45
677
539
641
984
82
147
877
487
347
565
367
522
115
640
986
476
594
543
648
433
241
723
680
53
836
634
619
150
199
703
997
314
787
408
762
659
671
628
388
168
536
569
548
822
393
966
393
72
994
75
871
612
726
825
966
697
100
373
435
115
503
57
309
439
550
404
111
135
961
319
323
739
601
650
829
478
832
919
519
40
200
176
944
642
865
83
890
451
84
561
623
977
395
575
946
463
816
50
773
629
164
556
799
294
114
769
469
477
465
91
576
880
331
772
90
242
272
232
910
961
511
652
106
617
804
33
240
502
426
71
657
189
288
29
253
28
71
159
511
309
137
504
940
364
500
92
724
766
232
469
492
137
491
180
871
485
90
427
215
414
508
319
778
690
434
982
177
701
110
204
225
608
793
837
746
113
437
945
415
482
670
976
384
300
141
684
601
145
132
373
65
271
550
465
540
900
446
945
764
601
743
416
393
240
726
761
437
830
351
855
634
103
683
509
810
657
195
323
824
272
266
337
618
721
305
675
185
885
494
949
995
188
409
865
93
795
602
893
63
262
579
565
282
109
322
292
678
380
624
249
471
49
359
756
979
267
253
902
963
229
203
183
204
941
225
303
408
546
39
829
423
767
598
273
836
443
625
913
452
202
145
507
733
802
282
960
327
410
172
857
874
65
986
766
837
206
919
821
610
786
483
574
902
820
679
566
905
849
474
149
200
142
699
22
365
133
917
243
25
745
731
369
457
14
498
131
453
113
609
676
324
779
145
757
992
346
396
419
865
242
816
10
392
80
794
877
22
567
534
846
946
46
735
808
895
792
561
948
687
151
689
511
218
473
753
734
643
159
515
198
40
405
105
859
570
250
838
108
913
26
581
55
848
767
24
66
670
405
819
709
737
68
883
16
155
625
289
843
907
840
523
548
71
707
938
297
465
290
769
341
473
547
84
261
141
546
982
694
110
659
346
136
448
255
195
577
902
732
349
427
784
848
748
29
76
859
363
74
410
744
561
22
196
429
431
944
417
886
867
11
23
98
73
320
395
79
766
732
963
503
116
126
639
502
384
564
838
895
125
47
344
881
11
416
81
429
184
67
204
81
839
891
483
537
941
407
74
530
889
966
18
797
376
713
297
460
671
862
865
323
908
168
395
780
233
472
687
616
756
377
670
535
400
116
394
883
356
124
977
957
649
361
803
196
374
156
965
775
146
678
900
95
29
863
58
942
459
274
634
829
410
28
314
199
308
681
315
289
868
669
842
347
403
714
245
171
87
857
215
880
401
90
670
388
62
970
400
785
938
753
206
976
63
720
206
803
87
233
168
146
210
827
884
329
410
100
777
635
365
919
997
422
769
746
415
743
909
735
455
237
443
700
509
287
197
341
812
847
811
813
711
638
633
631
415
665
300
787
557
729
256
979
968
568
857
428
146
702
420
923
350
729
11
32
961
15
172
40
281
600
894
56
533
148
107
35
566
691
64
129
920
347
353
50
36
332
240
377
205
566
16
823
914
656
931
751
979
512
516
671
754
94
186
562
925
174
390
101
823
953
80
712
406
302
228
629
491
803
259
255
60
746
59
179
856
905
143
509
688
749
514
250
973
73
594
34
675
458
372
440
913
483
269
962
983
985
276
701
969
750
718
891
152
901
198
743
882
621
34
149
110
519
255
838
373
62
503
192
438
85
830
262
168
457
269
117
198
672
400
984
502
304
260
529
924
747
948
521
16
515
729
663
101
462
151
967
998
380
866
591
193
382
136
225
438
153
174
983
861
814
839
739
933
815
660
658
172
905
782
599
141
887
347
859
283
914
34
619
809
569
886
328
158
405
143
588
725
293
474
641
244
639
413
191
688
474
558
619
796
176
743
244
609
631
546
376
745
361
42
863
13
197
702
413
222
690
799
583
220
224
418
569
839
549
572
367
414
51
515
427
685
379
740
91
829
652
100
450
989
903
892
310
704
36
689
804
205
99
289
799
101
328
775
733
493
571
185
458
579
810
691
19
685
961
545
32
170
859
419
866
998
488
185
286
374
56
485
950
58
681
795
578
734
722
552
727
443
99
390
847
693
648
187
215
277
599
189
337
300
932
790
96
77
198
218
970
193
520
140
27
423
622
981
701
942
503
117
212
188
701
349
640
685
394
974
487
813
864
966
278
244
654
245
133
653
655
189
779
205
368
919
666
339
985
706
112
355
537
27
482
810
654
857
306
812
875
512
181
828
533
724
101
847
674
229
147
235
106
632
207
706
688
902
688
859
664
415
508
732
431
220
529
866
560
190
869
650
194
731
426
840
185
418
889
649
417
204
149
431
693
275
166
189
307
720
117
707
592
847
86
112
474
582
462
519
922
41
955
684
546
679
370
331
512
256
206
599
148
790
707
850
899
36
304
838
134
451
441
725
715
335
476
707
946
898
526
168
746
990
800
662
869
106
589
568
470
710
96
561
373
528
672
327
974
524
562
731
521
849
373
426
252
580
279
574
876
992
854
489
751
975
202
899
213
364
623
60
515
34
960
232
249
420
23
623
215
351
644
516
530
761
848
261
959
695
972
896
420
740
53
333
13
641
270
681
464
519
986
844
741
193
463
786
490
229
985
603
85
288
901
165
173
165
112
923
756
517
873
162
172
133
976
673
26
88
897
952
700
121
233
752
187
304
46
291
528
706
259
597
263
478
403
519
789
369
758
130
696
807
401
543
443
952
821
506
178
622
555
379
584
499
821
580
787
691
499
428
432
874
634
976
279
498
372
498
953
11
130
109
740
279
581
567
367
326
787
484
410
388
894
225
835
284
674
818
496
907
497
296
829
26
624
595
440
203
708
769
922
152
900
353
868
301
677
736
662
286
822
785
170
905
43
126
108
652
33
306
917
65
702
705
35
301
94
929
761
522
981
791
755
548
877
191
274
589
457
782
392
88
549
123
224
663
695
471
769
415
211
281
334
238
870
181
162
402
738
768
349
985
697
494
323
236
971
257
993
894
127
853
370
768
866
12
247
404
144
283
994
140
567
750
551
152
969
197
94
367
581
474
867
293
105
251
879
194
164
428
905
837
785
663
227
877
659
413
703
773
226
365
476
439
269
430
52
633
781
631
95
971
295
760
776
162
995
746
761
470
957
335
51
421
406
406
982
730
352
151
500
700
493
650
419
297
837
443
704
680
817
225
960
286
726
348
767
85
526
429
350
477
987
754
968
716
863
210
371
735
721
727
704
684
541
839
893
388
382
169
841
273
143
315
70
866
708
806
352
800
562
169
210
163
512
292
289
883
116
796
91
592
480
911
172
110
511
70
24
843
846
183
144
266
528
567
679
370
208
141
305
421
416
898
325
173
181
493
482
641
481
928
261
719
397
907
123
631
820
153
888
746
477
330
418
456
646
388
205
587
775
72
237
770
721
237
49
256
235
792
989
255
790
906
213
880
288
791
655
914
574
427
444
881
908
670
514
817
72
477
857
703
992
57
140
389
646
996
950
992
913
752
426
468
761
16
425
666
993
496
949
189
688
444
422
497
154
793
740
945
394
904
970
488
363
607
929
435
767
356
745
844
260
711
470
785
14
336
162
668
573
413
380
116
118
284
822
478
284
93
426
824
171
18
420
427
24
441
626
770
515
932
641
494
687
390
252
124
207
947
732
222
793
214
110
267
79
618
628
607
947
239
817
793
752
529
254
741
242
369
372
883
804
371
212
13
806
510
604
178
414
801
577
269
584
830
84
627
559
47
99
446
912
244
468
855
818
476
42
647
43
20
973
996
801
991
893
32
936
415
868
385
691
375
290
484
68
179
807
505
524
483
228
784
469
817
436
945
668
340
637
862
361
35
609
751
581
834
213
489
167
441
471
291
127
36
386
393
486
42
763
903
822
850
192
111
233
863
11
96
675
382
394
117
51
337
782
624
801
361
332
395
25
457
337
357
338
177
803
280
401
387
767
554
562
175
651
493
515
976
763
60
424
856
199
786
700
638
978
600
997
106
890
858
110
365
635
314
883
719
26
173
392
92
31
214
998
974
943
404
299
696
568
838
158
431
266
977
559
352
287
572
680
23
949
68
58
930
530
763
451
65
163
815
60
461
520
608
474
666
240
871
264
224
312
540
649
818
398
726
157
189
351
540
199
953
671
488
969
251
269
642
846
830
820
364
38
153
252
168
237
866
862
449
418
889
872
87
113
741
502
161
420
908
995
672
798
926
244
352
367
390
165
446
977
235
904
736
792
726
235
594
282
58
158
181
267
594
14
109
323
946
909
481
878
887
137
829
933
448
908
789
569
78
281
284
369
668
68
838
546
960
870
297
626
893
324
533
431
354
53
590
667
181
459
150
498
847
355
869
14
559
581
344
56
997
691
352
832
859
826
405
310
967
631
184
790
51
674
845
693
749
301
498
470
715
42
800
775
830
538
195
391
822
632
231
24
460
815
626
955
547
669
68
785
266
286
427
841
232
100
88
780
59
453
629
848
524
683
101
423
229
44
832
168
831
793
279
28
876
32
469
694
157
731
254
851
467
335
473
943
272
94
195
273
31
251
982
312
693
91
804
595
459
791
491
182
686
560
510
412
283
252
815
585
439
543
534
193
974
405
390
769
879
103
559
856
345
474
807
931
152
528
788
647
563
109
390
293
382
208
588
971
573
36
274
925
396
76
509
539
484
379
470
961
147
931
486
429
886
647
257
715
901
175
373
844
404
998
502
832
602
519
869
584
117
444
712
881
910
785
776
537
100
903
475
381
413
405
566
682
208
999
256
218
758
228
447
12
752
401
555
698
278
717
257
892
381
236
238
856
554
719
699
161
761
765
775
491
979
23
599
87
98
529
789
957
691
999
392
654
635
587
240
101
838
120
290
436
145
460
334
906
343
302
179
744
486
467
479
733
212
992
97
157
383
638
100
288
538
368
913
337
769
452
803
145
189
95
532
810
861
511
989
399
425
336
720
297
566
877
937
717
994
935
814
50
75
107
819
880
397
554
474
629
533
229
182
997
641
489
489
281
190
179
402
825
795
383
985
441
662
831
894
835
877
570
453
988
215
943
995
885
897
222
764
903
907
170
661
615
502
796
316
349
390
62
112
977
518
324
768
295
543
659
887
443
88
556
252
367
84
527
35
367
630
676
132
881
551
410
52
520
280
404
912
219
860
981
380
932
211
18
333
600
323
477
821
12
254
662
386
445
278
711
705
789
624
464
172
955
162
832
574
24
318
691
320
642
947
866
336
983
62
74
631
51
395
818
744
88
494
851
526
624
174
501
121
699
695
523
158
707
644
700
531
491
568
132
584
575
319
714
874
498
673
294
757
243
138
576
537
369
630
955
838
255
802
23
189
558
606
111
915
255
706
548
712
104
312
892
498
435
929
528
465
753
555
842
953
814
921
727
683
76
975
819
218
881
95
575
102
596
178
977
323
963
706
468
199
925
829
818
183
377
179
89
969
919
656
651
105
944
710
959
861
625
102
561
840
381
642
997
463
13
476
798
577
64
784
809
526
517
989
702
618
893
258
314
563
193
204
995
491
287
473
912
465
467
859
407
817
27
862
759
280
564
341
298
947
989
205
225
448
191
663
177
982
65
473
953
159
639
197
635
399
262
226
313
483
235
234
795
65
897
626
500
268
580
515
52
771
687
119
932
153
153
45
284
259
262
325
835
406
167
391
188
962
447
980
902
680
714
220
392
789
777
227
534
693
676
886
932
628
170
287
471
460
550
311
449
508
839
652
720
671
739
366
655
749
231
822
888
728
599
183
393
950
459
184
869
772
448
671
117
665
674
384
527
278
473
221
38
133
443
862
648
104
435
398
290
747
479
30
512
560
896
273
189
799
421
814
443
994
412
184
471
258
656
636
305
429
986
325
997
53
964
869
935
445
821
639
947
748
588
232
714
700
53
426
30
831
268
624
835
252
186
281
342
21
797
12
748
832
205
846
591
982
461
608
872
704
274
795
944
628
726
18
430
833
510
605
198
317
486
363
827
708
742
168
591
535
577
519
365
437
265
585
507
22
584
493
17
537
605
446
268
534
732
13
612
43
337
441
905
273
73
750
562
975
233
61
434
340
964
787
317
659
724
991
100
527
358
936
892
901
250
596
632
429
435
56
532
175
961
174
206
690
530
68
337
130
855
40
119
842
957
217
685
776
187
88
604
371
515
539
433
666
105
836
480
513
471
876
550
606
227
448
419
513
560
871
503
404
542
298
447
344
935
598
198
297
275
109
735
292
818
711
150
405
809
537
522
396
780
673
193
470
642
422
359
314
426
465
66
637
77
72
831
720
612
292
925
348
781
262
202
44
727
103
357
381
745
982
731
500
951
227
161
829
908
257
710
822
801
597
919
242
708
887
393
42
227
931
267
449
295
311
218
133
435
308
466
44
458
446
618
24
687
433
460
688
664
994
327
735
964
278
723
977
71
75
196
384
698
580
650
508
514
923
341
965
441
815
897
275
451
196
947
34
468
728
261
640
799
962
149
691
557
886
380
973
383
189
386
487
283
848
124
995
355
957
907
389
195
595
167
385
145
374
210
479
929
863
245
211
132
374
780
23
109
868
253
511
165
358
991
675
947
200
396
191
645
198
364
600
428
259
806
175
141
983
404
816
546
491
563
951
901
511
836
112
833
334
389
802
560
958
389
506
493
877
366
598
167
16
791
877
117
683
536
196
621
309
223
516
887
47
68
578
315
990
169
177
427
424
369
25
774
898
922
751
956
907
591
208
353
471
945
348
864
132
837
702
743
90
930
763
267
494
651
241
168
378
346
857
340
883
350
158
394
754
486
212
724
276
498
950
27
367
741
988
255
271
56
850
508
232
956
832
417
946
147
326
348
661
16
222
515
553
618
487
107
130
913
85
187
315
761
650
172
776
183
222
556
40
943
452
895
151
772
475
602
312
564
273
387
148
142
27
489
128
966
923
957
82
308
99
756
937
25
548
972
618
337
981
995
434
616
337
925
123
839
934
686
545
296
846
240
118
347
456
481
973
754
562
778
610
61
790
398
586
603
36
214
324
11
993
693
86
673
266
169
808
726
137
940
202
85
464
31
846
840
465
930
288
69
30
172
61
948
570
941
226
254
622
287
197
718
923
426
954
580
778
793
940
256
231
518
286
197
834
112
711
800
114
124
858
131
94
973
391
443
713
65
222
916
304
990
617
14
347
620
933
745
555
808
252
971
182
270
989
434
483
445
633
661
724
767
826
283
165
251
165
165
72
329
540
432
915
794
672
657
957
809
898
957
606
480
305
613
194
646
59
122
513
327
994
102
826
473
785
589
765
769
605
995
417
233
431
257
164
515
205
453
630
69
420
33
106
258
817
252
367
527
514
340
143
222
522
473
380
417
875
885
17
46
451
86
974
579
668
446
764
601
909
520
391
93
479
744
997
985
494
382
413
432
555
276
924
11
277
927
855
193
681
357
653
500
831
694
282
330
581
781
336
589
300
485
555
560
931
922
571
289
140
851
384
367
734
163
813
672
702
564
223
637
266
363
760
752
899
632
251
350
318
793
826
168
477
120
511
294
628
553
474
468
151
395
764
562
920
830
616
223
293
426
113
104
197
319
236
660
960
157
518
417
139
505
440
177
99
26
875
360
844
296
788
35
202
458
619
717
510
273
821
927
681
784
49
321
209
864
658
480
475
273
779
844
155
286
974
910
317
492
258
941
970
229
111
275
236
701
677
232
156
659
188
144
931
242
376
459
363
552
192
58
200
731
619
641
386
289
714
803
63
663
397
16
852
674
481
75
160
424
834
781
389
472
209
630
147
225
320
566
962
573
609
775
309
949
729
367
847
904
255
518
276
513
118
311
241
96
844
592
415
631
880
516
74
758
885
741
318
510
513
52
536
888
600
647
75
194
712
224
695
743
425
17
774
59
287
118
650
38
835
866
303
65
538
861
741
513
832
959
102
633
620
539
694
376
279
198
902
483
812
925
175
570
987
577
768
921
185
740
385
558
414
890
986
38
707
493
883
855
695
929
234
424
951
118
42
959
443
664
284
634
351
484
693
563
725
134
636
519
495
346
918
600
649
200
39
343
693
19
111
144
280
839
203
697
255
773
580
537
574
850
827
823
283
480
983
683
190
182
814
827
724
23
619
837
829
672
408
889
682
718
684
829
863
519
463
325
900
497
836
110
657
568
986
392
625
943
300
439
84
264
45
408
38
294
532
721
964
310
71
866
439
970
497
914
508
115
800
40
334
751
42
31
247
234
138
425
579
513
570
754
614
810
136
258
35
459
797
306
907
365
632
368
209
351
170
998
772
423
443
617
256
671
800
951
216
601
396
891
851
932
533
274
583
518
200
829
831
192
885
345
800
869
806
127
487
71
535
881
451
286
362
839
793
145
585
81
262
384
328
512
104
876
842
464
245
28
140
526
747
898
358
619
665
688
116
853
744
640
524
416
455
849
777
859
519
399
203
814
771
374
745
751
733
688
236
873
570
574
899
172
915
836
517
379
825
871
441
29
131
786
367
62
382
89
886
977
874
422
628
371
149
605
27
311
141
344
624
635
886
810
953
385
686
684
881
388
883
47
80
404
560
951
646
71
305
537
78
379
433
472
609
497
846
340
779
859
954
149
312
63
463
234
920
438
194
478
868
212
807
578
494
266
23
872
573
907
44
345
286
874
475
936
833
470
913
620
341
430
186
475
700
402
26
565
102
601
203
637
648
595
597
850
688
357
915
268
435
428
611
993
607
523
184
913
929
664
825
681
982
498
86
495
216
556
630
845
106
923
817
111
921
684
191
938
207
299
905
452
510
973
44
766
391
468
730
200
852
970
546
786
933
883
958
832
398
625
164
227
416
54
162
533
614
838
301
418
75
282
624
22
817
292
493
405
661
589
421
773
287
861
544
287
621
111
73
70
540
108
808
786
709
766
429
950
909
920
439
94
113
729
365
559
891
855
50
122
53
342
976
82
332
598
634
692
688
828
313
48
510
693
90
29
797
557
286
851
611
520
789
157
598
869
583
804
29
190
129
741
118
30
54
592
770
354
135
524
253
747
333
377
333
583
109
760
365
175
409
750
955
581
704
774
516
13
52
628
715
28
314
111
471
596
180
472
740
404
298
816
539
916
691
364
163
278
219
608
832
435
638
81
972
270
30
435
599
958
630
918
108
299
192
364
89
121
505
140
139
908
183
630
443
808
750
48
723
15
505
545
552
699
129
874
954
606
790
104
976
564
626
341
913
395
78
35
567
570
92
532
874
652
877
541
518
699
863
161
877
165
120
573
296
245
308
948
39
503
941
486
495
832
214
966
686
141
809
980
123
374
759
339
751
282
36
899
123
774
324
781
359
807
339
703
320
266
849
540
894
486
255
720
488
507
555
988
927
594
722
212
69
285
447
395
820
561
338
262
69
843
259
314
738
504
425
187
734
416
700
925
640
332
404
138
215
667
229
847
831
551
623
939
628
241
288
935
178
22
912
959
235
469
888
414
709
797
30
715
90
487
956
183
805
253
869
46
482
495
674
24
265
527
115
457
301
651
784
642
777
370
163
109
557
169
535
458
571
722
206
31
832
736
74
432
944
654
116
933
262
107
315
791
743
528
93
438
662
213
621
160
626
932
485
513
777
48
160
646
50
726
125
413
824
631
546
680
66
396
440
775
640
55
492
884
585
318
814
716
205
801
810
873
583
577
717
819
411
47
499
122
491
201
331
94
239
106
335
839
913
575
707
358
646
155
752
839
569
833
82
719
592
688
744
438
831
287
180
411
101
839
959
428
372
489
100
253
990
346
891
785
533
328
870
688
103
871
733
827
952
717
695
607
295
351
675
662
404
885
207
881
174
615
126
133
58
780
898
512
837
152
803
173
827
572
939
869
65
15
964
864
442
630
75
816
113
214
408
433
902
561
461
347
932
370
130
495
52
345
101
376
424
30
900
458
818
25
644
789
769
774
227
392
194
643
314
634
81
547
397
26
601
207
434
220
250
285
120
72
491
529
639
988
669
969
871
941
203
202
186
62
745
466
192
243
523
245
262
857
426
802
33
705
41
633
794
923
596
881
128
914
977
952
661
524
245
24
841
880
463
805
400
993
201
501
781
972
983
201
376
228
986
769
59
145
474
256
310
565
374
940
901
165
881
617
702
610
312
124
394
649
514
722
755
340
697
442
911
68
971
322
470
664
17
281
93
182
596
458
771
116
356
544
520
782
393
501
437
883
809
84
325
869
184
154
455
112
117
444
88
543
370
554
738
703
958
444
334
888
105
584
67
136
135
834
672
339
198
936
97
928
991
444
458
723
291
413
541
766
865
61
883
339
829
770
303
675
828
419
437
601
740
513
453
669
349
413
814
562
503
756
779
969
209
657
70
306
956
421
253
462
698
824
54
240
252
470
563
295
143
445
998
42
223
554
171
589
758
138
985
699
635
936
497
475
787
535
648
903
467
920
556
539
300
853
217
10
128
199
747
103
35
268
950
813
67
983
325
573
291
513
830
616
257
941
837
683
157
735
525
124
515
173
622
62
787
118
644
685
70
127
193
244
217
744
224
785
23
52
514
134
74
60
257
636
219
442
649
301
795
373
747
772
242
250
182
314
591
191
867
864
66
855
37
207
485
826
46
138
538
226
22
559
821
803
888
728
530
860
251
958
331
286
473
235
617
376
53
125
716
910
772
27
334
699
475
235
344
205
416
201
430
268
971
778
285
277
66
931
92
46
307
76
734
567
428
426
679
191
840
587
461
802
186
482
395
169
341
287
562
295
376
477
99
534
494
810
614
700
636
155
728
922
854
105
31
376
954
311
86
753
154
51
248
906
643
372
725
520
503
829
91
407
521
938
30
630
822
325
411
505
538
889
61
791
364
113
656
809
470
572
63
654
842
135
487
411
911
373
49
84
787
538
620
696
416
957
91
856
688
297
827
402
612
545
334
907
597
73
39
262
924
944
665
709
403
415
111
593
957
572
984
802
365
611
931
456
454
204
172
582
73
171
882
370
516
287
639
290
482
553
750
546
474
723
234
633
370
372
504
107
226
694
966
180
422
785
537
46
306
205
987
414
181
903
186
618
704
85
587
372
686
271
788
267
914
903
138
796
972
846
468
506
217
962
519
272
776
465
707
482
84
329
281
821
98
381
652
29
731
613
926
116
847
512
931
135
285
251
975
530
963
815
177
837
838
302
150
546
229
736
216
604
269
239
576
127
220
399
472
204
441
14
240
552
265
972
341
59
570
256
229
857
166
445
174
108
251
380
656
959
128
966
773
109
22
769
735
272
373
489
136
189
248
447
821
254
615
142
427
64
343
200
730
790
820
479
393
485
362
38
417
546
733
932
291
255
703
973
212
86
411
826
816
909
770
725
121
296
698
859
649
78
910
943
373
890
426
363
362
431
415
525
497
581
217
656
942
854
327
734
732
409
672
884
994
233
484
22
799
782
305
682
522
746
493
417
445
994
172
879
628
655
903
478
520
674
19
503
75
497
600
929
44
932
408
332
440
556
278
330
450
878
705
731
358
956
944
861
646
652
565
531
596
818
718
316
673
454
194
409
86
483
950
285
770
717
18
201
756
885
823
764
437
76
228
625
515
242
686
884
83
376
473
663
925
703
953
711
254
777
992
466
198
204
325
139
54
115
328
500
697
896
196
295
411
764
352
673
971
926
616
166
826
396
645
107
543
946
803
44
946
257
196
162
474
126
910
782
687
527
926
948
60
272
691
449
872
671
52
254
836
933
997
118
123
159
664
153
798
788
565
42
238
622
338
144
677
575
190
746
691
482
706
664
283
310
720
631
47
868
887
304
541
559
576
554
121
124
244
745
645
288
302
455
691
797
729
185
359
143
558
909
350
378
696
371
715
926
591
715
883
468
434
686
732
187
894
698
583
373
674
861
960
334
304
239
746
769
609
760
771
215
967
151
647
268
284
379
506
828
913
559
305
67
213
866
55
938
141
478
973
131
25
231
366
95
471
245
560
317
822
656
935
811
221
547
158
969
844
622
360
191
100
305
369
850
389
568
767
699
169
670
99
273
392
565
897
825
719
390
360
193
732
862
862
296
679
97
302
719
461
863
976
227
604
894
167
61
60
357
805
220
591
427
762
87
416
299
62
294
476
780
741
688
146
352
596
993
517
633
374
245
128
357
196
23
771
543
139
474
665
768
147
539
169
191
579
909
419
990
420
640
651
748
63
769
859
200
579
390
391
309
925
470
318
808
855
101
930
263
873
329
974
699
86
190
616
901
436
847
699
701
213
628
193
495
453
656
839
784
943
248
798
596
728
409
62
637
634
440
130
750
812
246
614
630
55
424
679
612
393
452
854
44
996
840
95
46
456
663
464
243
570
565
119
328
261
205
17
101
734
478
163
725
361
497
969
625
802
645
256
664
708
860
298
186
417
946
798
849
908
615
426
773
820
662
409
492
851
338
60
955
194
721
482
394
917
673
679
748
329
16
467
337
388
146
840
359
769
710
210
916
175
106
502
298
255
319
656
999
916
876
854
251
426
575
817
68
611
437
362
199
588
790
535
186
592
107
38
813
549
175
706
139
439
987
248
158
331
847
579
496
954
229
48
826
580
765
121
809
571
347
318
761
280
888
111
536
987
131
319
967
782
606
240
673
704
882
63
93
803
589
465
130
394
987
934
481
437
503
98
652
678
617
824
861
451
933
466
566
869
243
999
431
367
807
484
671
242
799
772
24
14
519
640
82
207
421
962
840
773
716
420
505
710
796
290
712
445
855
192
443
376
831
515
314
113
324
780
758
238
330
424
891
614
723
469
71
465
542
164
84
972
193
575
854
843
694
969
348
478
831
618
13
720
764
260
576
88
19
51
871
796
666
795
885
421
223
950
96
282
314
852
681
285
501
42
290
241
241
640
808
562
963
787
419
691
962
668
536
40
355
162
47
598
371
800
670
328
237
715
528
664
345
863
895
52
998
773
599
97
94
934
24
262
345
554
86
969
735
235
140
137
149
199
611
821
842
525
999
24
942
144
595
519
985
571
85
121
716
504
47
214
470
563
417
362
565
531
567
447
700
962
841
920
914
234
91
108
258
761
618
716
546
714
226
511
398
107
725
18
580
919
685
557
777
502
722
102
845
331
774
696
20
632
503
870
779
868
154
974
534
677
609
621
142
885
786
617
750
93
285
508
170
479
567
686
997
993
415
646
813
699
124
367
948
692
651
703
35
148
502
800
746
530
99
902
514
872
922
353
694
622
873
32
76
969
229
235
11
864
410
281
767
627
128
994
908
704
682
190
870
530
243
115
284
702
239
913
624
197
399
376
440
17
809
761
934
211
703
912
606
268
241
230
472
911
305
632
119
271
965
889
223
969
23
145
114
665
848
563
371
514
504
918
42
863
210
891
56
750
157
853
358
508
756
278
395
937
816
796
843
33
213
312
413
962
391
232
334
277
448
117
930
104
16
266
42
223
807
401
151
930
941
839
409
803
254
672
671
550
630
321
570
174
822
404
71
387
389
490
668
958
661
369
825
120
870
866
703
228
663
875
914
261
649
348
324
248
378
584
28
150
22
491
455
66
205
349
840
509
845
41
848
99
677
243
215
684
61
442
41
896
525
480
25
905
763
676
722
424
417
369
638
323
171
903
559
329
595
273
779
402
156
515
452
130
360
610
892
668
297
173
496
180
97
286
447
601
595
860
795
57
585
454
408
230
482
584
668
750
169
824
845
834
873
134
393
490
743
473
203
910
671
871
605
443
125
934
826
281
960
988
225
647
185
468
747
53
331
916
678
909
398
875
721
272
788
122
700
887
240
755
315
887
384
529
188
996
693
416
775
103
826
735
841
326
777
664
878
185
303
56
575
272
891
667
971
196
996
466
301
352
799
167
127
948
622
193
748
113
294
531
924
454
131
276
456
447
720
381
169
913
897
391
162
449
988
783
964
687
764
344
381
544
599
239
615
577
133
312
778
588
486
120
461
718
770
933
580
485
158
78
854
356
658
302
624
342
313
376
583
520
32
570
78
592
586
936
359
521
484
90
781
35
310
21
289
934
889
867
333
559
53
83
549
547
265
256
195
765
979
780
866
615
373
344
526
509
456
806
763
496
686
470
682
45
481
179
777
731
596
223
801
787
209
534
124
150
64
788
322
753
403
313
735
848
925
142
990
94
648
890
888
117
514
885
122
44
355
35
873
521
805
378
762
180
794
563
223
611
322
427
93
878
945
902
799
436
906
948
891
656
235
255
852
755
563
742
306
701
208
490
540
267
226
686
886
475
798
874
81
921
77
710
886
840
215
292
551
84
674
35
255
365
769
97
408
233
960
934
993
969
440
295
901
110
530
764
472
758
173
490
588
253
262
473
99
386
923
137
141
358
677
593
756
678
761
327
552
430
183
564
311
917
221
970
444
238
362
98
73
982
885
664
378
579
962
716
274
881
370
745
130
926
664
418
269
45
817
672
939
10
155
444
83
213
298
92
452
653
897
721
981
211
523
457
216
740
639
799
473
363
215
540
113
516
391
873
813
144
675
507
770
653
513
172
717
573
597
916
266
836
511
274
981
113
650
885
197
548
383
214
465
718
909
929
839
884
917
78
863
352
825
493
694
516
209
847
182
58
659
81
939
517
161
37
113
117
933
485
135
983
242
391
873
109
367
415
784
324
609
551
345
788
955
436
899
788
861
49
409
502
781
565
295
961
733
901
263
340
191
674
628
526
570
800
689
496
409
963
417
295
351
987
574
784
475
948
157
798
116
841
378
985
941
559
804
585
468
67
361
68
58
888
745
413
884
725
777
978
525
955
557
664
284
310
438
348
336
460
106
794
274
773
959
435
733
339
987
302
71
764
592
453
129
313
683
493
250
603
100
806
365
157
401
952
581
522
984
698
823
608
537
936
412
605
392
221
430
361
499
928
146
67
89
226
227
998
254
716
813
698
650
304
567
224
43
328
496
170
732
383
523
535
392
896
550
208
184
690
546
544
861
440
100
740
786
723
706
414
93
148
333
209
555
446
488
227
318
382
813
851
606
718
232
985
992
117
104
119
763
855
261
63
687
541
857
946
392
315
781
253
341
947
697
664
882
584
577
87
172
485
221
832
938
769
717
910
442
563
873
431
335
332
725
707
819
740
185
162
15
334
206
743
123
745
223
622
732
122
369
253
560
679
636
635
679
25
296
890
890
439
482
804
820
149
329
721
919
63
481
894
793
485
635
897
706
913
328
225
405
404
546
72
434
90
535
248
497
14
54
217
606
609
146
137
360
192
249
570
924
886
849
987
529
25
224
668
750
256
109
523
723
603
487
644
979
804
865
492
405
610
329
399
282
763
204
625
715
249
951
363
693
155
447
250
932
480
254
792
211
116
462
839
485
406
465
86
324
287
642
709
269
678
849
962
14
365
743
635
285
632
116
575
927
516
814
505
104
466
221
802
968
622
635
917
487
595
983
528
681
271
888
881
962
937
203
943
928
694
296
689
258
568
990
657
60
835
933
286
171
271
747
26
899
74
787
318
441
517
830
823
168
569
31
114
56
372
276
157
837
780
677
335
408
250
289
298
109
273
510
533
152
304
430
179
561
208
568
678
550
709
849
793
672
937
666
141
141
633
884
120
241
632
152
980
183
524
977
191
644
729
459
812
26
811
65
922
725
446
52
945
354
649
551
95
371
585
193
870
579
744
879
573
227
329
95
966
842
816
208
492
484
622
218
23
410
140
944
731
602
502
855
262
608
125
96
498
248
912
720
150
865
215
815
215
888
504
550
518
105
948
998
161
492
353
640
277
648
103
728
175
955
658
737
307
511
965
621
423
547
883
924
957
358
586
722
664
509
975
828
468
15
747
564
640
752
893
394
55
153
864
114
313
965
812
334
511
982
440
825
269
706
895
724
315
924
944
730
836
118
336
444
244
942
602
122
462
257
57
677
16
146
542
566
551
242
779
730
799
940
737
654
829
747
719
926
199
735
991
43
311
900
199
252
528
866
582
331
793
692
315
34
779
738
159
84
425
934
549
988
381
260
895
516
688
789
416
99
202
205
378
249
123
623
847
686
319
368
814
716
381
703
535
558
672
513
841
766
737
966
125
52
791
94
440
975
705
630
354
778
306
519
77
53
548
407
79
485
478
394
516
500
390
270
279
742
353
990
342
331
242
921
97
880
356
734
367
789
143
480
896
757
270
734
711
930
169
552
11
949
464
350
463
85
194
442
381
573
72
134
99
115
422
410
539
25
125
413
580
942
219
420
919
716
590
933
280
93
48
621
480
521
303
713
403
718
65
120
196
112
106
250
281
852
614
728
638
26
664
66
867
453
742
701
154
960
976
903
913
842
502
943
992
166
466
937
176
782
116
14
260
995
748
806
713
60
669
38
137
572
416
283
647
972
346
753
653
943
526
413
192
282
388
550
548
474
255
80
167
291
941
312
142
344
709
280
142
218
11
724
42
257
48
425
473
339
997
499
723
595
812
854
401
583
839
961
187
729
108
450
550
550
617
463
951
904
634
774
691
976
895
897
402
505
376
293
683
447
634
109
914
896
253
998
159
253
154
699
700
345
670
998
48
55
449
754
481
963
236
47
984
310
529
948
512
455
528
860
137
344
749
20
241
837
938
84
351
286
559
788
993
904
140
852
757
320
180
378
167
936
802
311
407
963
631
152
807
878
167
801
767
794
407
889
102
678
537
994
347
107
742
702
381
566
641
29
79
389
137
978
474
871
699
70
308
13
971
861
493
136
721
937
334
166
146
711
631
244
262
285
689
640
405
319
204
537
147
628
223
429
850
520
668
779
639
696
440
83
576
803
636
509
451
421
59
753
274
15
657
802
441
672
866
828
714
68
591
127
440
34
159
274
629
16
123
338
235
460
483
524
467
91
590
758
186
422
80
423
298
752
196
144
675
311
453
652
570
955
216
992
152
247
611
875
208
160
194
241
715
425
146
50
381
901
724
95
101
361
856
931
266
546
941
15
371
620
282
311
96
739
290
326
633
142
770
170
123
775
393
846
309
854
180
639
779
208
66
649
627
468
473
205
815
103
368
643
766
271
430
226
58
54
225
74
818
587
796
787
264
572
341
217
420
288
311
416
671
645
35
789
140
281
526
65
832
962
617
559
376
576
34
684
656
973
588
878
110
436
298
134
533
854
496
881
502
144
719
877
72
399
207
27
304
873
629
829
451
517
917
55
724
714
272
813
172
248
433
525
745
784
748
942
429
580
159
445
712
825
203
426
977
541
931
281
525
880
366
650
134
482
900
988
68
545
630
717
973
596
544
812
138
233
153
436
925
75
926
917
621
988
19
418
518
978
749
570
374
885
111
463
316
114
383
176
985
329
908
945
837
730
129
674
504
714
363
658
879
369
21
157
127
821
748
129
83
174
660
97
330
540
934
627
218
396
684
451
186
57
994
439
22
276
909
399
87
226
154
409
707
414
439
691
216
155
343
430
867
261
498
500
40
345
658
181
191
123
933
966
161
90
887
49
384
401
677
768
718
268
781
377
846
165
875
101
599
109
94
86
263
813
463
703
132
43
66
896
828
419
750
884
918
488
216
508
510
166
27
150
471
451
881
677
25
134
930
388
404
143
332
632
989
663
915
23
359
302
242
296
272
419
302
401
621
800
370
257
514
41
974
51
575
803
35
820
221
202
444
121
639
101
473
720
776
139
124
383
243
294
473
270
960
663
446
677
502
709
774
528
652
671
778
429
348
35
230
71
356
792
416
605
931
865
557
48
194
252
772
305
589
173
993
283
333
191
498
580
336
877
919
244
18
262
594
753
740
461
634
169
759
632
21
761
581
124
15
263
428
804
896
953
301
235
640
774
529
673
335
303
754
759
376
833
309
501
214
283
933
525
24
562
588
35
39
148
385
424
398
341
489
289
164
800
263
213
283
237
641
258
193
81
816
566
245
528
268
221
716
870
779
548
487
575
687
179
123
182
317
768
634
264
227
710
344
483
952
531
427
444
611
942
399
952
66
99
73
225
289
781
21
19
68
516
90
788
168
166
705
723
33
252
681
647
815
367
167
894
840
282
826
913
776
394
229
471
17
244
777
304
882
295
267
926
178
467
847
552
933
96
261
664
307
417
392
590
91
391
276
667
722
12
274
295
286
733
726
523
836
519
361
445
747
17
234
389
647
586
313
373
465
817
307
82
239
832
961
396
84
906
908
603
954
399
697
788
79
99
890
85
627
984
329
843
108
205
494
412
138
502
831
507
907
165
480
316
908
604
935
228
904
223
95
167
375
849
290
600
310
932
201
184
208
590
224
230
815
238
702
876
602
237
902
405
806
732
402
583
641
415
283
448
554
648
262
262
627
99
250
670
986
778
327
898
37
890
428
18
439
531
698
657
535
494
368
861
200
474
247
16
170
61
452
98
669
615
697
856
733
271
122
160
134
609
975
248
530
951
649
975
199
503
259
619
290
877
93
856
865
733
297
731
470
489
675
774
878
136
863
307
121
562
141
234
583
532
138
343
291
713
846
165
186
578
457
544
65
932
399
571
560
87
798
150
880
624
690
318
127
669
997
605
978
614
749
440
361
957
25
602
797
668
108
745
428
456
53
616
638
710
388
968
785
941
776
427
152
664
844
491
615
193
73
922
669
629
473
32
359
845
644
950
104
758
360
371
973
22
607
945
687
148
348
758
417
402
71
514
853
142
98
413
245
628
341
499
452
871
419
784
618
298
448
61
138
696
818
115
902
826
780
706
677
226
428
53
971
84
869
800
776
742
273
832
635
96
670
185
899
425
887
947
847
146
435
258
36
31
317
385
918
713
464
256
72
606
350
820
151
377
853
970
790
573
337
436
829
354
573
436
692
204
647
118
24
734
88
540
889
186
661
639
873
205
795
641
873
429
17
144
600
546
516
46
175
71
603
316
584
417
59
368
676
694
587
469
637
925
917
815
80
658
244
799
99
445
185
18
497
273
921
609
33
25
897
262
267
263
55
582
187
74
201
712
733
495
669
794
758
942
742
331
816
557
571
492
860
981
916
233
746
147
738
975
237
759
848
609
329
83
755
903
512
904
973
495
68
731
725
707
311
483
667
206
511
75
622
706
282
303
222
878
886
368
637
418
672
637
92
223
198
429
157
992
746
234
482
416
842
992
422
357
214
498
722
354
644
156
238
464
232
780
441
687
736
303
495
228
600
798
202
441
98
780
992
589
136
25
748
307
517
52
493
628
534
582
371
678
227
717
553
946
884
689
58
366
277
660
444
245
604
11
773
351
55
796
313
227
220
389
249
758
702
199
346
830
540
20
992
734
767
450
986
943
803
573
345
559
482
299
43
133
885
865
767
629
50
788
386
395
319
891
779
693
247
925
517
997
549
819
918
879
258
430
872
277
555
392
428
568
439
442
510
93
625
75
799
855
51
760
672
259
90
598
280
953
620
946
747
11
696
96
757
153
48
873
265
540
192
954
411
627
32
241
820
109
305
106
18
11
875
914
203
318
774
498
936
841
706
832
121
392
783
913
364
304
839
573
644
341
337
315
832
822
880
262
743
172
88
187
475
621
552
124
698
746
987
406
592
281
140
212
440
729
663
358
661
776
558
341
357
14
741
457
751
437
518
112
711
390
194
694
902
773
926
873
166
853
165
357
946
642
683
214
149
131
754
676
429
901
836
696
813
94
418
463
824
750
674
432
153
335
479
143
662
539
522
254
715
27
569
874
998
711
668
927
349
191
719
684
376
296
364
551
251
479
628
466
65
74
155
561
377
319
736
300
970
367
86
60
258
18
983
534
812
783
193
88
138
154
264
385
146
141
277
961
406
608
56
779
478
249
252
147
72
479
719
89
723
18
182
823
387
196
545
892
919
914
595
324
646
520
131
611
996
539
731
838
507
101
777
811
236
125
84
927
207
943
455
303
210
315
752
666
994
35
251
541
586
370
245
174
956
656
867
673
129
192
805
24
340
875
913
155
626
794
373
293
871
101
785
191
819
323
344
822
184
667
883
97
462
156
229
59
760
548
959
51
362
179
594
310
462
247
962
772
53
553
189
643
686
248
310
368
759
383
383
165
758
369
26
137
912
743
799
908
617
369
34
135
73
630
428
818
39
358
864
667
825
532
644
801
112
145
696
109
293
306
352
221
994
839
464
78
197
853
874
889
646
458
299
801
631
890
469
18
358
649
541
254
627
878
383
389
494
690
980
779
761
818
628
112
43
653
979
184
762
838
424
907
466
571
242
834
413
276
50
712
518
167
47
66
761
661
793
539
826
345
170
580
335
403
759
944
692
808
700
289
229
288
471
441
114
470
64
414
402
705
140
499
788
972
679
202
213
188
495
134
336
505
270
615
40
833
670
963
137
126
817
244
698
679
91
435
196
426
961
396
507
558
69
686
268
198
656
258
849
383
114
782
332
296
402
311
15
447
868
140
989
633
429
21
790
423
490
597
589
968
291
707
414
246
262
667
945
878
931
507
264
106
496
638
544
694
558
648
414
642
847
255
575
396
440
255
782
512
701
187
476
750
681
865
477
829
529
802
380
31
622
276
373
931
574
43
556
327
274
724
212
508
508
797
554
654
604
658
999
238
766
866
737
884
795
697
749
936
385
676
53
757
143
39
35
249
18
286
519
905
957
976
649
666
394
521
62
752
388
874
685
323
132
946
797
506
114
300
370
439
84
770
959
29
199
814
833
251
560
305
369
327
199
91
388
462
988
149
371
585
326
901
321
182
281
63
479
975
873
815
20
894
614
608
208
319
286
406
199
589
971
471
314
288
757
958
631
605
763
231
744
836
424
736
466
242
325
823
993
959
743
232
818
517
683
799
781
771
832
753
990
242
70
529
720
872
609
87
254
654
70
370
428
835
91
915
449
15
122
740
325
128
273
675
189
844
490
494
608
923
486
919
63
605
107
197
541
63
627
811
874
977
414
164
53
719
367
328
267
111
69
515
266
80
182
182
188
844
38
725
609
904
756
326
922
913
59
95
805
781
457
541
631
479
206
735
99
333
259
476
805
536
866
507
370
647
213
342
950
796
250
19
402
853
726
572
799
632
987
228
204
134
606
568
807
96
184
793
84
936
332
170
546
904
516
107
309
40
348
976
713
500
535
385
388
978
826
165
242
412
914
927
40
750
40
606
342
812
173
195
865
864
75
443
349
278
645
672
772
734
684
924
600
73
989
733
591
406
143
619
74
873
98
799
318
365
64
112
997
987
293
167
727
384
356
57
864
845
507
77
504
196
219
910
617
685
343
150
485
851
425
453
249
372
627
190
591
257
600
329
937
464
573
130
326
270
600
595
323
76
875
974
723
468
481
280
240
361
743
528
517
768
558
134
559
873
687
323
659
965
548
393
77
934
710
47
529
79
865
181
877
990
612
657
429
267
547
821
590
893
602
225
490
776
245
882
826
25
453
559
661
870
844
343
413
941
226
776
329
26
348
682
630
257
525
293
405
508
670
486
527
349
698
263
904
330
12
874
57
459
410
297
919
375
909
868
649
414
906
449
267
455
698
65
824
231
544
546
990
389
120
810
229
381
773
568
209
662
422
280
962
758
551
968
838
82
922
710
849
416
493
438
620
149
495
614
801
75
604
470
842
945
885
740
414
131
492
636
640
158
884
121
751
651
649
744
298
559
840
842
892
403
186
75
392
230
66
140
351
701
513
971
173
979
361
38
104
897
992
157
348
457
909
76
99
37
15
774
231
262
459
962
189
872
337
170
21
99
638
911
866
993
761
494
788
26
655
100
971
260
603
534
945
997
292
696
809
738
109
738
43
248
61
782
673
938
584
877
265
405
457
621
746
122
188
647
603
372
277
135
669
98
478
216
760
395
280
587
600
987
750
683
887
358
779
118
277
729
376
201
194
248
345
532
167
598
349
755
753
143
416
467
47
941
764
549
906
759
890
257
50
342
821
998
198
359
777
215
255
866
574
368
811
135
192
217
751
960
471
677
690
317
974
856
892
174
396
74
794
475
106
857
37
209
212
696
282
820
76
89
238
190
472
504
43
593
166
111
899
956
524
344
61
312
637
245
859
187
990
988
568
784
677
435
895
522
14
956
927
163
130
882
247
457
208
319
653
84
142
23
492
316
840
965
673
879
232
108
654
264
132
546
258
977
37
739
581
508
837
302
100
193
225
270
792
235
30
989
831
893
150
424
993
605
674
490
55
167
301
828
346
411
688
779
925
698
300
206
157
952
455
455
880
822
952
675
715
917
207
470
587
708
951
683
677
22
490
468
77
68
893
93
776
805
564
283
163
426
446
966
970
642
131
324
126
281
721
451
626
147
60
814
780
84
471
857
571
295
128
868
212
925
106
170
778
952
679
902
686
187
165
164
384
448
419
572
21
414
801
949
709
168
902
664
599
557
602
775
27
264
965
164
834
437
633
596
216
262
629
439
578
103
933
660
685
930
835
489
573
72
486
841
227
106
163
84
31
654
270
512
471
69
974
884
100
235
107
651
398
386
929
284
780
822
167
19
557
694
671
219
252
163
917
489
414
821
551
130
406
873
122
279
779
914
913
450
549
615
390
984
10
833
944
150
977
619
425
211
258
273
354
658
910
857
647
521
108
712
93
662
441
600
524
25
332
901
709
688
657
847
781
70
24
815
779
613
769
673
63
177
110
741
837
673
325
241
744
263
871
21
814
849
397
87
117
233
167
497
445
802
132
972
178
182
181
652
533
198
84
409
837
999
904
51
562
131
299
813
321
675
207
844
485
338
596
379
378
303
427
248
749
328
923
729
977
969
128
782
425
412
522
588
484
138
185
490
574
50
17
472
73
32
926
778
955
139
379
965
387
898
570
389
343
632
343
490
926
99
719
110
932
683
831
376
184
170
316
466
226
473
224
171
579
554
481
121
763
209
521
235
457
526
146
764
333
803
871
136
329
716
130
734
250
599
634
273
34
168
712
579
912
121
495
170
82
961
288
579
848
43
514
278
928
521
71
541
110
475
396
119
557
907
370
114
274
886
514
809
273
164
285
887
737
694
803
100
531
335
851
434
993
111
296
179
234
919
938
738
192
821
504
187
40
75
765
694
849
885
979
869
866
692
258
378
678
37
402
136
630
923
314
721
837
136
621
737
245
53
356
502
829
622
527
620
121
744
468
610
41
906
200
43
711
547
949
759
348
472
880
512
113
470
683
836
767
934
995
725
448
918
645
623
502
71
753
811
639
340
52
968
939
71
937
205
617
338
842
154
742
652
916
789
539
859
740
841
265
351
431
877
125
942
69
992
146
100
733
711
715
250
958
39
873
448
353
782
443
952
215
722
123
342
937
887
655
170
452
23
936
32
13
35
243
549
688
27
227
874
589
525
786
89
709
901
19
287
115
635
946
913
147
414
21
130
515
908
532
986
140
834
394
333
164
992
662
341
416
182
35
266
389
103
382
875
500
944
944
824
988
895
676
938
209
166
626
789
41
983
889
549
36
871
136
781
807
223
297
468
154
265
292
756
273
619
580
222
880
735
243
945
912
912
274
188
819
686
279
34
408
490
47
249
855
989
745
646
350
281
546
357
730
43
563
809
707
858
51
143
677
161
163
547
761
170
45
875
532
887
654
613
180
205
816
860
361
244
495
419
498
176
825
432
700
184
186
107
647
181
627
212
178
409
399
907
986
449
760
714
704
501
775
677
459
747
407
981
363
54
705
434
73
601
358
898
25
934
643
410
876
365
33
81
284
136
380
185
772
984
100
874
311
592
765
551
232
399
755
849
867
995
240
563
13
109
581
906
870
68
987
853
500
935
874
976
258
190
897
466
142
253
685
603
362
548
983
337
580
762
611
46
45
13
88
734
972
573
853
879
284
484
181
971
696
694
42
943
676
709
217
598
159
370
345
356
932
140
305
393
609
596
49
191
387
999
393
138
15
794
651
206
706
34
248
341
159
429
271
740
661
903
197
575
979
806
617
59
862
791
572
479
385
488
718
175
960
474
89
667
361
328
838
44
676
823
295
233
972
349
137
440
231
273
838
287
740
258
703
971
682
618
628
927
898
376
319
517
724
41
392
722
975
713
113
524
891
644
279
189
123
624
757
364
256
15
952
959
855
477
739
341
406
208
493
769
281
357
978
132
190
179
572
418
744
393
294
765
307
741
473
120
433
484
47
552
54
723
670
32
783
629
581
140
340
109
221
660
190
184
596
271
709
916
76
972
816
102
396
82
267
385
498
476
561
320
730
316
859
720
44
486
717
65
809
852
131
557
196
811
487
342
120
781
288
355
268
962
336
46
450
522
243
388
650
532
150
959
145
508
404
578
671
191
404
429
179
11
108
986
91
20
104
783
79
810
263
380
731
380
20
338
423
271
672
429
365
765
165
565
749
66
465
740
980
694
18
151
623
972
77
922
851
684
487
263
884
956
611
153
752
342
143
800
484
33
297
312
690
605
642
52
94
41
923
400
899
201
118
570
770
999
681
607
369
371
537
87
742
851
119
208
156
207
26
653
230
438
336
80
969
358
377
749
91
163
21
979
341
269
418
225
520
57
512
891
237
600
948
21
706
669
204
602
344
863
332
961
198
643
708
103
678
890
746
50
985
281
423
743
748
609
105
361
504
552
403
643
978
951
409
970
747
251
677
36
36
504
891
145
820
705
95
471
944
900
674
76
863
530
136
137
887
548
17
955
455
26
695
405
495
453
40
673
787
400
281
205
12
499
52
131
38
78
614
339
849
117
359
842
333
324
737
130
64
957
164
664
244
241
526
248
205
88
565
652
718
509
903
341
584
613
867
383
346
764
53
621
946
696
891
273
322
571
510
924
559
459
396
379
725
89
438
790
861
239
840
112
911
856
225
490
948
290
444
565
25
724
201
936
934
902
923
352
403
640
914
185
932
344
428
925
83
617
651
593
975
115
621
330
600
492
987
715
64
934
495
477
883
731
399
710
637
322
554
428
878
382
328
35
807
147
170
51
167
944
426
58
155
481
909
157
484
370
881
232
368
881
82
997
732
706
227
693
327
742
733
358
411
363
932
298
104
720
779
476
458
648
782
95
10
303
66
383
605
535
898
917
208
976
80
870
280
373
642
122
377
695
204
203
154
147
235
634
363
799
66
257
603
69
846
434
365
367
634
247
625
161
553
527
779
841
555
529
376
437
776
792
409
558
951
831
406
787
902
166
235
72
379
657
865
724
364
321
623
162
627
846
211
741
728
888
321
323
865
359
105
318
90
854
229
613
472
810
706
348
265
617
774
518
269
77
602
835
969
954
426
730
332
51
900
760
770
75
126
983
976
244
273
662
173
751
292
520
304
862
267
283
159
986
463
777
489
211
856
660
975
972
713
981
403
428
317
868
270
973
75
258
622
699
263
718
258
110
211
861
725
440
787
356
298
16
711
853
563
617
975
10
154
815
318
189
591
762
536
315
289
267
688
80
905
981
28
295
810
38
81
328
799
80
960
540
451
445
563
834
244
928
638
615
185
857
305
331
403
835
939
73
936
633
915
245
242
880
863
243
656
527
337
696
197
781
436
64
504
117
162
200
621
269
37
381
660
209
407
212
519
186
325
17
750
728
522
889
184
881
971
195
339
873
592
567
471
761
997
853
366
729
346
294
532
393
643
140
375
807
347
31
230
923
153
607
537
910
237
769
526
89
356
675
296
856
653
186
481
875
205
662
493
584
482
406
998
606
763
18
397
448
994
365
657
685
801
307
629
318
830
416
391
478
102
101
720
270
474
320
658
394
618
703
33
311
234
792
349
817
698
62
990
182
222
588
381
77
989
318
322
495
964
338
176
192
76
462
476
721
813
903
106
256
554
406
602
789
916
510
942
874
647
782
345
36
304
713
543
176
737
582
214
257
78
631
676
580
574
665
436
726
67
213
809
896
283
725
593
617
539
784
144
464
712
114
844
661
417
702
542
595
554
130
933
424
763
205
921
754
777
598
165
775
291
298
626
668
412
853
885
450
18
931
991
446
386
124
654
592
198
183
193
599
470
341
806
306
84
20
365
898
64
511
20
490
640
915
221
806
938
611
379
912
257
235
218
203
224
821
394
871
56
365
153
751
553
718
142
985
621
210
165
617
698
64
521
31
661
764
611
957
929
883
900
636
992
599
864
802
157
853
160
297
407
925
407
900
50
495
636
809
975
967
858
994
427
669
895
769
503
518
290
911
500
258
665
232
345
833
209
619
574
271
751
944
892
174
49
702
659
353
988
417
521
707
832
947
831
175
658
429
231
818
755
978
983
904
864
789
551
987
159
957
423
836
311
456
70
745
742
441
324
77
207
889
184
713
57
183
830
959
383
724
737
188
806
584
475
899
373
280
741
860
990
494
42
621
415
928
288
359
540
380
850
574
595
571
811
735
540
699
197
172
604
87
751
939
854
78
538
889
612
851
877
566
864
88
713
795
479
359
902
316
710
558
518
468
840
141
834
102
393
618
563
535
323
452
374
785
20
351
807
956
438
929
879
318
197
977
712
737
306
399
377
941
87
696
282
104
970
119
804
212
23
213
448
869
406
366
688
326
155
998
868
451
740
804
962
71
498
740
707
515
59
626
965
403
712
369
960
156
748
776
477
356
723
995
750
739
905
871
573
541
547
223
987
486
275
77
505
251
10
975
279
268
629
423
85
99
586
864
784
335
753
976
597
393
491
850
865
607
858
313
698
947
437
597
621
814
967
223
936
540
90
248
179
783
291
569
90
757
117
843
168
550
266
310
754
340
555
365
536
758
204
632
934
689
959
401
714
394
313
612
483
131
971
271
898
759
332
214
578
813
830
352
772
308
83
318
975
644
541
977
142
672
980
831
336
726
88
887
212
292
31
707
37
742
938
193
855
661
691
164
883
334
639
43
525
444
321
86
842
830
161
113
374
775
292
343
639
937
908
183
256
967
865
815
273
411
224
911
486
215
220
551
298
369
243
494
586
871
124
978
596
846
816
226
965
929
246
362
842
155
178
166
159
778
989
358
934
633
729
836
827
743
866
157
698
465
697
22
140
860
686
483
82
554
75
104
987
934
861
356
775
339
777
72
66
499
178
160
942
200
738
799
362
38
170
248
988
625
404
339
333
531
937
933
249
380
721
433
659
313
870
544
124
122
753
888
733
810
526
730
995
183
131
560
287
522
373
284
879
260
46
987
584
360
535
268
592
135
997
578
247
746
136
752
10
473
831
113
270
595
546
967
41
360
19
836
504
127
854
730
408
582
603
816
366
794
447
451
697
572
433
359
617
809
452
392
855
904
986
377
597
630
659
325
966
869
415
617
553
474
391
153
516
186
982
829
873
716
479
746
364
588
612
466
185
350
886
409
491
375
33
35
499
178
459
372
774
960
91
916
858
551
387
372
148
966
461
172
36
49
238
733
880
426
820
676
545
362
999
966
782
212
856
424
74
531
799
31
307
833
780
522
697
11
852
126
717
331
521
425
141
946
756
837
419
26
998
269
918
962
67
178
861
899
244
15
161
924
726
943
810
773
14
973
838
277
192
739
121
210
851
210
810
14
198
424
810
890
427
601
245
627
271
622
449
457
495
461
597
475
328
926
539
838
693
116
768
673
393
475
683
732
730
422
895
182
18
654
258
126
488
444
429
948
363
453
517
953
181
843
301
687
206
429
836
197
17
516
787
377
235
784
776
304
205
850
756
889
781
622
249
496
475
32
160
767
513
16
731
233
412
633
440
758
217
684
364
229
185
120
124
612
693
290
634
206
428
274
183
33
712
229
776
336
521
788
450
510
489
893
329
179
622
712
379
600
965
90
592
980
191
117
945
519
436
690
375
436
293
874
575
142
79
929
32
895
807
718
696
185
438
744
460
138
125
547
788
142
611
368
178
546
300
184
381
359
509
712
330
587
197
600
421
961
600
260
868
245
672
996
750
207
363
32
190
879
373
673
427
798
238
579
955
389
832
50
460
396
224
130
916
979
899
38
703
819
190
409
635
292
883
689
704
980
409
418
508
204
209
825
626
233
888
113
542
820
990
92
82
703
470
116
291
445
866
630
944
676
299
495
656
891
180
496
650
480
17
61
282
105
927
441
791
229
887
370
478
485
452
787
79
491
59
359
240
390
979
147
241
959
863
933
303
418
235
629
282
618
240
541
975
484
395
500
326
405
698
384
655
352
426
60
642
53
202
21
29
954
548
549
518
616
345
621
708
631
904
715
30
741
623
187
387
726
608
291
163
234
28
670
421
230
980
580
502
427
236
772
349
12
76
145
776
666
37
858
428
193
758
283
273
654
142
370
305
554
359
626
307
668
659
961
491
158
758
799
246
41
395
271
403
79
402
378
420
611
75
570
958
531
289
879
556
861
927
747
961
660
504
270
298
977
33
948
875
468
407
198
722
487
493
749
703
339
488
314
988
558
336
361
426
68
550
823
378
513
977
734
688
409
504
834
496
593
530
500
886
105
903
725
259
179
565
999
936
201
557
308
11
409
473
238
240
369
76
551
135
74
836
509
564
449
978
469
419
458
92
772
428
69
747
443
263
505
82
276
367
492
700
678
881
415
351
177
601
479
655
838
969
527
78
579
673
508
324
426
283
737
900
241
549
490
688
370
515
858
912
396
986
867
351
715
71
11
579
304
817
431
274
392
22
227
361
640
237
586
148
277
146
562
260
128
608
595
774
191
499
203
586
335
240
40
933
683
205
25
252
25
26
885
765
731
310
488
418
920
195
757
920
46
340
366
135
380
560
375
316
219
328
433
955
39
521
476
103
750
576
667
511
875
93
112
878
51
603
966
706
463
192
981
880
202
983
862
207
37
733
528
141
262
915
666
527
502
231
572
628
440
752
990
761
872
87
24
682
102
499
160
444
913
546
383
673
379
687
943
323
293
974
570
178
142
738
868
101
851
25
460
852
615
153
908
12
947
461
868
487
107
254
260
852
104
39
133
755
18
313
627
127
559
692
886
69
496
613
224
507
862
729
167
246
405
144
80
445
315
957
724
79
291
193
698
993
832
136
718
516
529
494
668
590
730
811
972
774
589
52
437
360
548
155
503
408
47
848
945
768
177
175
271
85
137
182
749
259
187
694
597
888
149
691
409
207
557
348
204
899
712
625
116
469
607
678
875
359
880
391
454
959
813
835
453
377
950
729
186
912
198
159
290
584
697
711
391
386
166
226
81
391
726
37
933
487
80
660
593
50
691
960
581
764
657
533
609
741
679
626
439
939
311
252
740
968
483
664
821
296
463
974
855
134
519
247
709
705
886
530
978
632
480
704
196
137
870
777
654
186
200
540
961
246
979
488
965
470
55
313
243
377
969
424
373
100
363
235
503
483
699
277
301
476
253
130
495
58
515
956
16
805
448
176
419
738
44
883
669
301
953
491
479
648
123
96
378
514
389
535
375
460
185
92
238
839
966
865
298
926
967
347
291
15
612
127
960
521
47
15
31
568
74
321
434
169
600
319
187
570
98
651
957
473
913
414
567
13
605
191
278
486
178
633
195
262
853
300
93
642
36
938
553
960
70
108
865
264
531
354
333
294
692
457
840
272
742
850
990
571
650
37
577
219
911
71
790
854
730
606
953
427
395
381
334
242
53
978
457
30
287
983
59
133
994
950
227
709
634
928
101
464
82
167
94
626
108
968
548
88
996
973
970
449
763
196
790
175
727
785
208
171
401
186
957
180
406
929
486
864
362
269
382
91
953
806
262
345
913
605
678
884
614
335
709
129
93
959
243
367
819
332
586
623
740
968
619
506
544
325
455
309
103
778
214
253
957
825
210
51
724
427
97
920
853
46
995
15
286
335
515
616
791
510
425
696
118
235
268
21
370
703
26
823
364
418
560
600
301
796
785
469
487
848
168
585
889
968
485
153
688
210
352
619
476
309
676
806
794
358
385
19
323
462
260
422
120
370
264
445
460
963
304
306
843
448
684
307
572
96
47
891
635
666
411
319
895
913
118
985
853
741
432
864
836
696
256
370
747
880
600
356
937
162
984
932
100
705
524
99
399
885
885
401
635
857
198
57
650
143
336
542
531
833
760
392
650
550
668
201
187
384
843
998
31
208
440
851
415
878
680
646
283
420
128
188
442
846
954
160
154
446
212
561
137
838
385
541
15
597
532
504
18
830
28
594
790
608
576
752
34
658
695
554
51
200
996
305
39
480
253
483
913
301
461
876
639
891
620
606
165
211
62
231
481
560
833
274
573
359
921
573
132
738
55
991
528
908
778
156
179
220
42
962
256
206
217
274
48
981
293
200
46
959
984
675
68
746
117
872
688
626
320
414
271
685
899
977
781
120
768
275
416
96
538
229
662
77
911
507
295
713
210
720
647
406
773
310
176
804
564
603
697
657
736
315
409
555
977
532
43
787
335
554
648
697
789
143
305
510
338
920
286
72
84
313
835
698
176
772
287
456
147
411
587
328
728
96
952
569
862
758
482
73
332
162
548
618
573
429
553
59
451
891
20
338
983
384
207
582
663
891
680
739
882
56
287
287
241
421
31
822
152
113
703
199
640
588
220
69
440
807
611
72
595
254
794
516
722
924
664
528
20
598
361
512
58
363
764
790
699
202
544
475
625
813
646
410
212
708
376
269
45
39
185
829
128
634
80
703
685
238
312
191
598
215
70
942
260
214
702
990
80
619
84
136
940
900
96
256
912
796
603
538
290
771
687
858
829
508
589
53
295
280
402
518
659
885
787
852
223
41
698
180
484
360
125
980
112
349
452
202
51
590
924
725
582
391
324
514
988
933
196
480
397
234
909
907
211
183
423
276
708
684
636
562
187
774
265
12
815
712
914
926
291
344
458
899
572
289
906
193
889
117
264
159
348
447
477
695
542
611
216
185
886
944
65
438
604
112
617
766
460
371
23
836
540
967
712
927
937
977
322
628
637
30
190
399
372
46
520
923
66
534
938
338
851
992
503
338
666
68
945
655
441
788
917
729
528
235
375
431
645
554
47
350
939
24
119
525
645
330
825
613
927
161
470
420
136
695
637
153
789
256
61
268
527
881
766
349
862
142
761
885
700
91
876
572
424
727
585
239
168
168
561
48
534
931
549
458
796
562
43
643
614
474
596
593
580
863
474
424
947
803
972
226
609
955
426
93
844
414
849
911
836
842
30
818
154
151
256
816
434
798
427
640
83
84
118
185
944
206
761
240
973
221
709
506
473
779
366
878
349
678
891
269
404
170
122
147
691
231
473
599
851
671
201
219
304
733
606
851
684
154
968
297
579
888
886
31
590
39
494
190
338
789
798
540
555
475
722
567
17
285
758
958
833
996
762
493
36
988
686
953
654
980
179
48
667
17
714
145
558
206
887
32
286
690
306
777
552
469
271
337
995
676
91
215
607
498
835
198
365
474
718
70
902
572
687
995
471
56
429
62
538
828
586
755
183
621
59
616
282
15
900
129
719
381
98
598
997
19
919
258
971
236
243
467
536
893
317
262
971
908
628
533
861
424
279
170
556
233
124
90
60
956
523
626
100
874
273
191
883
944
560
800
400
987
984
96
435
634
292
863
978
285
313
980
837
62
511
340
320
223
540
759
684
161
960
319
426
651
753
710
300
766
410
142
807
230
929
79
156
462
526
367
612
296
925
508
933
957
388
46
630
401
134
211
149
275
553
947
773
107
924
421
434
244
558
548
697
966
792
320
989
397
398
574
394
14
946
728
813
341
745
818
404
244
333
393
510
536
913
787
560
359
517
682
293
217
300
18
97
900
338
568
226
35
751
227
205
102
237
21
770
432
131
627
726
213
253
61
699
581
222
865
684
824
244
595
588
829
614
911
783
610
61
696
981
749
564
405
477
559
206
480
582
162
615
109
511
249
863
91
616
605
926
50
997
550
568
236
542
658
250
259
173
84
382
531
515
893
685
154
137
129
827
378
949
599
87
951
840
415
958
225
275
798
890
64
923
11
627
789
889
366
251
248
991
928
303
50
281
10
879
839
852
68
768
833
168
104
704
265
914
268
65
471
923
420
997
429
820
664
671
203
917
559
879
917
583
817
508
80
346
201
191
475
154
609
819
98
884
74
785
640
113
512
267
505
221
865
193
565
108
363
55
418
59
480
421
946
689
145
298
441
611
986
493
130
525
411
908
286
137
99
300
95
244
407
483
82
532
567
952
840
240
441
152
340
42
962
661
148
23
177
429
415
220
750
756
575
675
865
630
975
215
186
644
657
797
681
953
471
373
189
420
441
42
626
724
148
90
863
909
691
412
60
150
338
83
602
196
705
595
309
959
51
523
877
576
847
345
687
155
481
124
654
642
816
479
332
31
207
973
705
26
790
528
586
547
392
974
174
211
984
685
938
219
428
805
669
94
610
363
266
129
389
694
863
977
527
641
592
950
56
10
606
380
525
64
998
25
248
257
775
676
938
527
93
555
712
569
533
171
78
847
53
506
82
235
702
413
234
341
351
950
954
657
47
145
706
833
974
55
526
842
417
720
939
477
537
689
626
44
274
146
911
775
771
225
396
797
337
468
980
531
112
957
151
646
880
489
810
956
585
85
496
963
255
162
906
384
642
512
933
460
37
15
931
411
650
425
295
735
493
846
507
705
338
218
69
645
985
728
79
781
319
149
636
331
874
660
816
465
529
861
484
139
570
641
634
629
70
630
886
455
531
702
170
901
601
442
858
171
638
963
396
411
200
58
367
880
201
505
316
104
701
493
782
158
126
379
714
659
230
711
703
259
556
148
33
230
837
752
681
695
438
418
80
679
584
370
511
14
455
660
255
560
63
937
329
32
47
263
644
383
704
438
712
790
337
403
697
985
888
785
568
386
667
821
433
749
102
281
197
95
102
981
587
987
596
80
884
432
86
749
324
34
564
901
810
44
554
296
581
448
172
433
690
214
450
703
709
414
88
97
110
244
500
607
723
319
338
191
525
463
237
329
344
883
332
691
116
881
551
747
966
395
812
562
598
726
549
822
548
817
186
630
251
393
128
969
423
543
566
420
370
527
992
248
40
905
708
708
803
207
318
806
247
739
573
925
46
183
968
351
406
892
469
15
810
790
336
13
95
348
701
902
512
229
276
269
128
461
818
66
561
978
454
582
44
670
431
718
434
987
679
671
575
81
208
123
527
349
154
765
505
691
267
980
579
163
809
320
182
26
636
361
73
540
797
253
827
24
116
198
28
403
359
706
18
48
471
603
288
92
208
721
213
298
451
806
299
703
257
352
222
229
671
94
140
295
146
428
491
171
721
999
336
373
432
336
610
978
735
440
450
575
742
759
784
381
219
110
784
937
235
642
384
309
515
797
194
716
830
624
103
202
890
705
268
793
449
752
492
806
283
272
930
338
573
316
217
998
815
771
436
361
911
747
865
539
331
996
546
425
619
57
63
972
617
956
158
574
399
846
572
382
451
827
14
265
310
452
664
458
895
762
874
243
554
203
712
53
292
126
734
788
651
586
336
392
946
858
403
633
652
164
648
928
981
711
271
887
415
928
122
915
210
742
71
512
75
242
455
709
329
395
379
84
677
269
68
76
262
275
339
385
685
512
900
52
198
797
340
46
325
263
819
687
951
407
283
430
128
678
147
501
503
363
589
28
293
140
97
256
122
622
411
485
921
426
765
947
54
418
239
353
968
78
408
403
182
289
32
797
132
425
156
756
550
576
723
113
640
48
454
646
98
434
595
554
542
347
73
676
245
602
115
158
537
995
169
569
41
841
30
975
561
559
100
794
689
70
430
618
992
101
868
352
253
484
52
448
848
780
47
955
527
347
67
46
719
634
378
394
792
303
77
427
243
710
444
715
274
121
845
429
202
604
121
247
703
571
765
504
991
525
414
552
886
396
236
756
292
118
915
484
161
273
939
306
150
309
353
521
192
690
836
577
638
680
70
694
287
407
330
28
344
28
944
303
428
582
911
933
726
71
397
953
473
951
752
374
720
48
955
278
465
223
367
97
279
964
119
695
963
632
376
757
860
585
944
745
722
979
150
371
617
99
721
482
978
331
126
289
149
951
216
246
155
874
34
207
73
325
142
207
516
84
147
276
897
37
563
555
504
853
315
932
166
878
490
404
10
387
216
830
990
790
750
595
494
799
599
788
705
941
992
924
15
592
429
530
528
163
376
41
83
809
916
210
104
643
120
968
791
704
80
992
153
104
920
881
615
618
975
577
30
553
555
98
275
290
646
126
58
893
900
916
873
567
432
893
467
268
310
337
83
258
59
266
404
634
13
956
100
547
85
868
932
511
43
99
597
592
67
403
970
637
16
62
272
56
30
538
736
795
855
42
357
427
818
147
752
378
933
369
57
34
409
182
183
926
882
989
963
112
682
549
636
744
674
604
807
901
463
369
501
45
592
354
306
365
813
834
946
788
983
301
937
121
329
65
38
536
437
439
340
987
55
50
454
113
363
955
74
34
543
821
901
694
632
685
451
238
955
378
133
849
603
126
893
308
80
489
499
107
713
560
171
14
720
984
592
71
873
537
30
188
875
574
359
685
504
652
462
755
602
460
917
787
199
862
519
374
780
781
907
959
935
527
746
88
931
464
457
162
669
688
924
757
205
640
975
133
261
254
33
973
722
997
430
963
987
265
736
142
674
266
682
111
119
811
358
693
250
702
716
904
456
298
497
342
300
432
719
561
893
200
315
168
518
623
196
667
75
733
610
43
191
868
691
106
587
42
863
228
967
708
20
605
41
251
232
817
867
799
327
633
118
311
545
829
574
41
507
189
993
732
233
265
726
267
511
456
946
748
93
34
620
273
350
757
156
244
110
855
365
785
255
187
533
67
670
987
877
150
813
484
145
714
114
975
358
814
852
997
326
343
935
940
514
166
808
67
207
108
871
571
636
225
982
774
638
251
864
274
426
854
711
589
341
952
505
173
452
80
114
406
500
906
502
70
575
690
116
467
896
304
489
25
445
114
809
589
746
541
300
100
942
305
605
932
815
207
101
438
822
468
202
725
662
76
249
974
218
904
322
187
559
995
55
479
395
664
776
272
988
902
469
239
953
137
46
947
271
790
579
286
719
899
629
521
454
338
780
371
693
358
782
426
122
540
509
190
493
248
127
729
979
809
103
199
168
363
369
947
312
645
693
158
716
570
604
103
568
260
752
546
594
509
489
938
607
409
570
412
912
604
766
603
639
191
165
938
223
569
362
581
186
111
541
207
138
176
571
873
111
194
348
123
657
605
915
553
394
171
157
868
42
451
878
329
329
309
983
590
433
732
484
654
550
441
580
53
450
530
787
571
15
143
277
32
881
425
848
572
157
744
133
689
122
137
883
933
374
509
933
294
202
604
710
612
477
261
976
830
65
576
980
901
782
128
115
140
281
432
395
727
145
980
630
252
769
101
734
972
977
180
811
16
244
601
928
639
334
904
32
200
591
629
48
394
640
457
25
605
373
742
348
782
757
67
918
806
940
438
723
418
711
630
226
247
760
498
14
363
968
600
919
88
706
678
438
631
861
776
990
715
99
606
975
548
559
300
215
236
51
903
459
584
592
618
234
97
276
685
893
535
798
344
383
828
133
868
769
881
664
60
569
222
912
691
141
170
128
918
548
211
812
252
626
200
695
82
147
913
450
474
30
165
563
849
145
99
546
34
122
12
588
505
102
867
368
640
37
714
909
533
935
305
452
109
906
424
926
84
306
17
971
70
69
750
510
395
403
560
924
688
966
200
144
989
219
585
264
83
578
864
878
287
62
854
569
263
288
799
28
179
755
77
43
15
985
753
77
351
985
321
461
813
386
575
920
762
385
579
725
601
314
688
488
465
924
97
920
501
531
131
801
202
434
587
195
408
944
701
868
766
290
159
257
31
59
892
537
457
214
195
502
136
806
947
703
81
960
278
544
268
542
605
589
465
823
786
600
31
699
810
786
409
114
328
369
213
211
627
13
27
141
548
269
701
471
822
182
436
710
650
331
920
783
954
565
529
636
192
452
28
358
581
551
573
895
586
280
58
494
266
786
851
669
998
594
442
740
283
58
718
724
605
400
915
16
433
753
498
317
84
81
971
807
206
787
918
707
533
325
546
53
511
406
189
760
798
715
224
360
444
695
606
911
577
468
477
644
877
813
831
347
749
908
776
242
192
841
704
599
365
536
428
464
152
838
525
524
215
458
588
498
365
115
684
787
184
771
485
84
104
909
864
363
411
227
388
608
285
535
767
564
242
165
794
315
117
40
194
774
504
194
458
454
873
244
173
594
727
201
309
687
429
563
956
813
116
69
687
316
410
445
908
949
710
845
836
591
841
57
930
93
887
960
879
621
266
388
895
823
65
509
863
962
478
983
641
844
117
469
250
765
694
523
733
177
336
106
428
364
297
935
423
476
630
267
921
275
31
17
345
525
25
645
574
150
943
173
16
327
687
641
920
253
698
529
950
618
423
840
155
367
941
660
606
142
680
161
60
734
761
580
530
444
181
381
518
797
853
178
327
138
178
554
776
369
332
129
945
809
131
538
110
89
785
700
231
79
184
522
134
470
238
337
797
161
810
466
151
36
336
126
38
308
171
839
639
200
349
534
891
426
231
607
740
950
717
228
261
277
838
360
842
921
615
581
530
194
842
945
558
519
571
817
92
666
396
185
271
12
369
433
11
601
406
157
225
427
80
218
276
370
202
175
472
538
933
867
941
572
741
644
223
103
377
227
864
624
284
222
661
401
767
729
989
918
742
304
358
874
585
125
692
935
697
814
821
621
51
872
133
355
95
181
568
288
711
319
839
486
937
515
382
566
594
654
702
301
531
21
706
121
559
824
981
183
463
800
561
745
886
206
172
284
529
476
208
105
530
188
961
157
677
135
389
139
727
358
688
295
914
274
462
587
656
422
154
214
709
172
742
174
816
806
347
287
836
331
456
974
632
443
683
68
371
262
409
24
29
515
698
336
306
872
752
358
131
841
965
507
936
789
511
371
888
630
41
97
448
760
608
159
636
897
346
601
573
545
844
559
323
20
715
869
780
680
449
442
644
40
498
591
479
19
322
712
972
209
322
919
751
806
903
752
252
284
373
383
680
415
522
242
527
86
989
766
249
707
741
218
157
295
579
423
949
231
522
610
66
952
719
894
852
496
804
369
877
336
111
131
204
331
934
354
973
921
225
116
537
277
600
676
15
588
948
69
284
726
32
244
676
335
284
820
373
65
672
436
316
534
389
488
737
677
317
805
688
702
810
819
260
501
50
701
898
61
494
295
206
231
987
625
622
334
468
908
476
215
823
970
333
41
554
898
84
596
680
101
30
577
852
903
842
394
567
366
234
262
79
700
287
965
58
519
474
461
801
343
451
799
219
898
151
608
370
319
136
147
443
992
987
59
444
565
541
503
608
465
766
189
353
255
673
127
214
543
461
932
378
147
237
943
953
292
40
152
819
386
429
335
752
142
267
170
795
67
953
92
436
608
25
217
823
979
693
840
296
29
364
938
525
755
515
227
425
229
312
509
339
558
929
138
812
780
686
287
349
270
669
462
649
577
71
308
59
23
718
625
808
403
729
388
484
141
594
169
905
191
499
794
702
23
135
381
267
237
270
937
753
189
700
203
425
306
924
742
160
174
973
878
98
63
453
96
446
787
600
346
721
365
277
305
563
998
81
316
310
618
299
725
183
462
117
587
940
140
920
774
941
223
887
262
308
367
129
837
290
521
16
559
89
440
600
937
620
714
575
343
819
44
81
178
682
497
248
345
286
600
545
278
420
760
213
662
114
702
638
352
713
348
416
340
306
331
818
921
290
911
937
440
292
740
945
786
685
911
177
435
145
338
991
950
196
17
230
550
697
925
658
538
281
679
676
368
82
283
534
876
355
645
455
455
872
60
846
987
297
730
958
561
802
207
145
154
953
873
269
123
894
618
359
118
620
662
557
814
41
75
551
761
337
844
596
203
665
139
57
633
334
173
582
367
325
223
526
85
419
619
815
36
526
498
273
714
425
679
520
382
751
543
679
605
369
214
704
107
288
908
896
817
391
482
556
660
348
512
765
446
740
876
926
440
254
585
869
474
877
393
181
579
325
408
547
317
196
960
930
495
990
925
833
587
110
876
75
270
596
834
74
734
788
209
395
644
779
163
399
983
53
449
775
125
289
29
62
345
198
179
456
724
279
809
587
549
359
239
448
522
236
166
545
440
548
398
144
46
767
576
914
883
393
727
984
236
338
291
38
67
864
780
315
616
594
104
281
618
501
769
286
562
105
813
182
650
612
426
699
403
362
64
784
616
783
624
983
930
49
215
272
204
380
622
529
60
588
699
337
874
984
540
452
454
236
394
833
601
672
46
513
536
199
773
620
891
890
15
662
627
875
609
640
530
50
572
261
534
878
84
640
574
25
14
189
904
937
574
274
475
177
379
22
926
344
877
644
566
740
290
256
977
68
664
133
466
654
928
333
673
524
128
383
278
830
515
651
160
27
959
74
160
598
329
426
947
631
250
450
19
333
851
375
189
769
743
821
830
690
428
374
481
358
250
25
784
673
132
740
699
165
502
89
847
529
739
630
362
966
215
929
138
70
577
401
126
593
935
206
814
81
449
709
122
363
557
710
627
804
346
670
245
417
834
512
910
33
192
173
265
390
639
219
697
789
48
96
796
25
936
291
626
52
557
678
27
159
674
530
729
976
719
608
702
729
473
775
46
377
250
961
303
881
812
97
471
84
177
818
671
465
553
58
897
317
839
461
306
665
495
445
840
936
667
458
103
169
648
943
810
793
137
735
227
105
478
503
412
228
689
123
403
694
872
463
474
135
539
370
689
189
43
613
559
315
186
590
320
815
466
42
979
464
892
436
693
572
437
544
362
854
691
140
384
949
433
388
749
841
91
562
844
283
46
900
518
978
902
891
126
130
79
270
721
250
519
629
550
340
745
922
601
514
567
186
781
363
50
492
327
302
544
592
797
753
68
348
